📄 examplescfg.lst
字号:
169
170 ;; module TSK (STACKSIZE, SYSTACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READY
171 .global TSK$ ; == 1
172 .global TSK_STACKSIZE ; exampleScfg.h55
173 .global TSK_SYSTACKSIZE ; exampleScfg.h55
174 .global TSK_STACKSEG ; exampleScfg.cmd
175 .global TSK_PRIORITY ; exampleScfg.h55
176 .global TSK_VCREATEFXN ; exampleScfg.cmd
177 .global TSK_VDELETEFXN ; exampleScfg.cmd
178 .global TSK_VEXITFXN ; exampleScfg.cmd
179 .global TSK_SWITCHFXN ; exampleScfg.h55
180 .global TSK_READYFXN ; exampleScfg.h55
181 .global TSK_NUM_HOOKS ; exampleScfg.h55
182
183 ;; module IDL (USECLKIDLTIME, CALIBRFXN)
184 .global IDL$ ; == 0
185 .global IDL_USECLKIDLTIME ; exampleScfg.h55
186 .global IDL_CALIBRFXN ; exampleScfg.cmd
187
188 ;; module ISRC ()
189 .global ISRC$ ; == 1
190
191 ;; module LOG (ENABLED)
192 .global LOG$ ; == 1
193 .global LOG_ENABLED ; exampleScfg.h55
194
195 ;; module PIP (gNumEmbed, gNextId)
196 .global PIP$ ; == 0
197 .global PIP_gNumEmbed ; exampleScfg.h55
198 .global PIP_gNextId ; exampleScfg.h55
199
200 ;; module SEM ()
TMS320C55x COFF Assembler Version 2.04 Tue Apr 15 17:20:23 2003
Copyright (c) 1996-2001 Texas Instruments Incorporated
examplescfg.s55 PAGE 5
201 .global SEM$ ; == 0
202
203 ;; module MBX ()
204 .global MBX$ ; == 0
205
206 ;; module QUE ()
207 .global QUE$ ; == 1
208
209 ;; module LCK ()
210 .global LCK$ ; == 1
211
212 ;; module SIO ()
213 .global SIO$ ; == 0
214
215 ;; module STS ()
216 .global STS$ ; == 0
217
218 ;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN)
219 .global SYS$ ; == 1
220 .global SYS_ABORTFXN ; exampleScfg.cmd
221 .global SYS_ERRORFXN ; exampleScfg.cmd
222 .global SYS_EXITFXN ; exampleScfg.cmd
223 .global SYS_PUTCFXN ; exampleScfg.cmd
224
225 ;; module DEV ()
226 .global DEV$ ; == 0
227
228 ;; module UDEV ()
229 .global UDEV$ ; == 0
230
231 ;; module DGN ()
232 .global DGN$ ; == 0
233
234 ;; module DHL (gChannelsAvailable)
235 .global DHL$ ; == 0
236 .global DHL_gChannelsAvailable ; exampleScfg.h55
237
238 ;; module DPI ()
239 .global DPI$ ; == 0
240
241 ;; module HOOK (KNLID)
242 .global HOOK$ ; == 0
243 .global HOOK_KNLID ; exampleScfg.h55
244
245 ;; MODULE CONFIGURATION
246
247 ;; ======== GBL_config ========
248 .asg 00H, _ROM
249 .asg 037H, _DSPSUBTYPE
250 .asg 00H, _MODIFYCLKMD
251 .asg 0b50H, _CLKMD
252 .asg 00H, _USERINIT
253 .asg _FXN_F_nop, _USERINITFXN
254 .asg 00H, _ENABLEINST
255 .asg 00H, _LARGEMODEL
TMS320C55x COFF Assembler Version 2.04 Tue Apr 15 17:20:23 2003
Copyright (c) 1996-2001 Texas Instruments Incorporated
examplescfg.s55 PAGE 6
256 .asg 00H, _SUPPORTCSL
257 .asg 04000H, _TRCMASKVALUE
258 .asg 00H, _CALLCSLCFGINIT
259 000000 GBL_config _ROM, _DSPSUBTYPE, _MODIFYCLKMD, _CLKMD, _USERINIT, _USERINITFXN, _ENABLEINST, _LARGEMODE
1
1 .def TRC_cinit
1 .def TRC_R_mask, _TRC_R_mask
1 .asg _FXN_F_nop, USERINITFXN ; used by GBL_init
1
1 ;
1 ; print a warning message if project build options do not match
1 ; global configuration options.
1 ;
1 .if (__large_model)
1 .if (GBL_LARGEMODEL == 0)
1 .emsg "Project build options do not match Global configuration settings. Compiler options sp
1 .endif
1 .else
1 .if (GBL_LARGEMODEL == 1)
1 .emsg "Project build options do not match Global configuration settings. Compiler options sp
1 .endif
1 .endif
1
1 000000 gblinit .sect ".gblinit"
1
1 ; triplet (# of words, address, value) initialisation records
1 ; inserted in this section will be processed by GBL_init
1 ; macro for run-time initialisation of a specified contiguous
1 ; block of words. The end of table sentinel is "0" and
1 ; is inserted by GBL_end macro
1
1 ; Even though, linker cmd (sourced from mem.cdb) file has exact
1 ; same information, below table is still retained to allow for
1 ; stack stamping at run-time (such as following a reset sequence
1 ; w/o a re-load) via invocation of GBL_init macro
1 ; ************************************************************
1 ; Note: Lead3 linker uses "byte" granularity. But, GBL_init
1 ; will interpret the count as # of 16bit (2bytes) words!
1 ; ************************************************************
1
1 .if (__large_model)
1 .word ((GBL_stackend-GBL_stackbeg+1)/(STD_TARGWORDMAUS))-8 ; nwords
1 .xlong GBL_stackbeg ; addr
1 .word 0xbeef ; value
1
1 .word ((GBL_sysstackend-GBL_sysstackbeg+1)/(STD_TARGWORDMAUS))-8 ; nwords
1 .xlong GBL_sysstackbeg ; addr
1 .word 0xbeef ; value
1 .else
1 000000 0000% .word ((GBL_stackend-GBL_stackbeg+1)/(STD_TARGWORDMAUS))-8 ; nwords
1 000001 0000% .word GBL_stackbeg & 0xffff ; addr
1 000002 BEEF .word 0xbeef ; value
1
1 000003 0000% .word ((GBL_sysstackend-GBL_sysstackbeg+1)/(STD_TARGWORDMAUS))-8 ; nwords
1 000004 0000% .word GBL_sysstackbeg & 0xffff ; addr
TMS320C55x COFF Assembler Version 2.04 Tue Apr 15 17:20:23 2003
Copyright (c) 1996-2001 Texas Instruments Incorporated
examplescfg.s55 PAGE 7
1 000005 BEEF .word 0xbeef ; value
1 .endif
1
1 ;
1 ; DEFINE A SPECIAL WORD THAT WILL BE COPIED TO TRC_R_mask
1 ; AT PROGRAM INITIALIZATION, INSTEAD OF PUTTING TRC_cinit
1 ; INTO THE .cinit SECTION.
1 ; THIS WAY WE CAN WRITE TO BOTH TRC_R_mask AND TRC_cinit
1 ; AND APPLICATION PROGRAMS CAN STILL USE THE .cinit SECTION
1 ; AFTER INITIALIZATION IS DONE.
1 ;
1 ; The TRC_R_mask gets initialzed by host side too. The value
1 ; assigment to TRC_R_mask occurs at auto_init(in cinit records)
1 ; as well in bios_init
1 ; The following is the sequence of code illustrates this
1
1 ; 1) .cinit --> do otherInits... TRC_R_mask = value .... otherInits;
1 ; 2) bios-init --> do TRC_R_mask = TRC_cinit ;
1
1 ; TRC_R_mask can also be written thru the RTA panel .The panel
1 ; does not have knowledge, as to where is the execution
1 ; control of the program is. ie is in 1, or 2 or in between
1 ; or after it. Writing to TRC_R_mask
1 ; directly from the RTA panel, can fetch wrong results. For
1 ; example if the the exeuction control was in section 1
1 ; ie in cinit record initialisation, but has not
1 ; reached the TRC_R_mask initilisaion, a write from the RTA
1 ; panel would always be overwritten by the cinit initialisation.
1 ; An another variable called TRC_cinit is used to avoid this
1 ; problem. The RTA panel would write both to TRC_cinit,
1 ; as well as TRC_R_mask. The above sequence of writes
1 ; will not be a problem, as the bios_init, which assigns
1 ; the TRC__R_mask variable, will overwrite the "C" initialisation
1 ; and the value written by the RTA_panel will prevail.
1
1 000000 .sect ".trcdata"
1 000000 TRC_cinit:
1 000000 4000 .word GBL_TRCMASKVALUE
1
1 000001 .sect ".trcdata"
1 000001 TRC_R_mask:
1 000001 4000 .word GBL_TRCMASKVALUE
1
1 _TRC_R_mask .set TRC_R_mask
1
1 000002 GBL_initdone
1 000002 .sect ".trcdata" ; Note that GBL_initdone has to
1 000002 0000 .word 0 ; be initialized during load time
260
261 ;; ======== MEM_config ========
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -