⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 examplescfg.lst

📁 TI OMAP5910(1510)的最简单测试程序,用于 硬件最初的调试,简要文档含环境配置
💻 LST
📖 第 1 页 / 共 5 页
字号:
1                     
1        000000               .bss _MEM_memtab, 01H * MEM_A_SEGMENTSIZE, STD_TARGWORDMAUS, isMemsegAligned
1                     
1                             ;
1                             ; Set MEM_tabIdx to 1 if _segzero is set to a MEM segment other then
1                             ; MEM_NULL because the MEM segment will in the 0th place.
1                             ; If _segzero is MEM_NULL then set MEM_tabIdx to 0 since MEM_NULL is
1                             ; only a place holder and not a real MEM segment with a heap.
1                             ;
1                             .if $symcmp("MEM_NULL", "DARAM") == 0
1                                 .asg    0, MEM_tabIdx        ; Index into MEM_memtab
1                             .else
1                                 .asg    1, MEM_tabIdx        ; Index into MEM_memtab
1                             .endif
1                     
1                         ;
1                         ;  _MEM_memtab needs to be set to zero if no heap are defined
1                         ;
1                         .else
1                         .global _MEM_memtab
1                     _MEM_memtab .set 00h
1                     
1                         .endif        ; .if :_gNumHeap:
1                     
     266              
     267              ;; ======== OBJ_config ========
     268 000008               OBJ_config
1                     
1                             .if (__large_model)  
1                                     .asg    "_OBJ_table + 0 * STD_TARGWORDMAUS",    OBJ_TAB_SEM
1                                     .asg    "_OBJ_table + 4 * STD_TARGWORDMAUS",    OBJ_TAB_SWI
1                                     .asg    "_OBJ_table + 8 * STD_TARGWORDMAUS",    OBJ_TAB_TSK
1                                     .asg    "_OBJ_table + 12 * STD_TARGWORDMAUS",   OBJ_TAB_MBX
1                                     .asg    "_OBJ_table + 16 * STD_TARGWORDMAUS",   OBJ_TAB_SIO
1                                     .asg    "_OBJ_table + 20 * STD_TARGWORDMAUS",   OBJ_TAB_SA
1                             .else
1                                     .asg    "_OBJ_table + 0 * STD_TARGWORDMAUS",    OBJ_TAB_SEM
TMS320C55x COFF Assembler         Version 2.04     Tue Apr 15 17:20:23 2003
Copyright (c) 1996-2001           Texas Instruments Incorporated
examplescfg.s55                                                      PAGE   12

1                                     .asg    "_OBJ_table + 2 * STD_TARGWORDMAUS",    OBJ_TAB_SWI
1                                     .asg    "_OBJ_table + 4 * STD_TARGWORDMAUS",    OBJ_TAB_TSK
1                                     .asg    "_OBJ_table + 6 * STD_TARGWORDMAUS",    OBJ_TAB_MBX
1                                     .asg    "_OBJ_table + 8 * STD_TARGWORDMAUS",    OBJ_TAB_SIO
1                                     .asg    "_OBJ_table + 10 * STD_TARGWORDMAUS",   OBJ_TAB_SA
1                             .endif
1                     
1                             .asg _OBJ_table + 0 * STD_TARGWORDMAUS, OBJ_sem$next
1                             .asg _OBJ_table + 2 * STD_TARGWORDMAUS, OBJ_swi$next
1                             .asg _OBJ_table + 4 * STD_TARGWORDMAUS, OBJ_tsk$next
1                             .asg _OBJ_table + 6 * STD_TARGWORDMAUS, OBJ_mbx$next
1                             .asg _OBJ_table + 8 * STD_TARGWORDMAUS, OBJ_sio$next
1                             .asg _OBJ_table + 10 * STD_TARGWORDMAUS,  OBJ_sa$next
1                     
1                             .asg _OBJ_table + 0 * STD_TARGWORDMAUS, OBJ_sem$prev
1                             .asg _OBJ_table + 2 * STD_TARGWORDMAUS, OBJ_swi$prev
1                             .asg _OBJ_table + 4 * STD_TARGWORDMAUS, OBJ_tsk$prev
1                             .asg _OBJ_table + 6 * STD_TARGWORDMAUS, OBJ_mbx$prev
1                             .asg _OBJ_table + 8 * STD_TARGWORDMAUS, OBJ_sio$prev
1                             .asg _OBJ_table + 10 * STD_TARGWORDMAUS,  OBJ_sa$prev
1                     
1                             .asg    1,      SEM$sernum
1                             .asg    1,      SWI$sernum
1                             .asg    1,      TSK$sernum
1                             .asg    1,      MBX$sernum
1                             .asg    1,      SIO$sernum
1                             .asg    1,      SA$sernum
1                     
     269              
     270              ;; ======== CLK_config ========
     271                      .asg 010H, _IMR0TINTMASK
     272                      .asg 00H, _IMR1TINTMASK
     273                      .asg 04H, _INTBIT
     274                      .asg 010H, _TIMERIMRMASK
     275                      .asg 01000H, _REGS
     276                      .asg 00H, _TIMERIMR
     277                      .asg 01H, _TIMERIFR
     278                      .asg 00H, _TIMERNUM
     279                      .asg 01H, _USETIMER
     280                      .asg 022H, _TCR
     281                      .asg 02H, _TDDR
     282                      .asg 0b64aH, _PRD
     283                      .asg 0b64bH, _COUNTSPMS
     284                      .asg 00H, _COUNTSPMSHIGH
     285                      .asg CLK_F_getshtime, _TIMEFXN
     286                      .asg CLK_F_run, _HOOKFXN
     287 000008               CLK_config  _IMR0TINTMASK, _IMR1TINTMASK, _INTBIT, _TIMERIMRMASK, _REGS, _TIMERIMR, _TIMERIFR, _TIMER
1                     
1                         .if (CLK$ = 1)                                      ; only expand if
1                                                                             ; the CLK
1                                                                             ; module is
1                                                                             ; configured by
1                                                                             ; the user
1                         .else
1                             .wmsg "CLK Clock Services are not available"
TMS320C55x COFF Assembler         Version 2.04     Tue Apr 15 17:20:23 2003
Copyright (c) 1996-2001           Texas Instruments Incorporated
examplescfg.s55                                                      PAGE   13

1                         .endif
     288              
     289              ;; ======== PRD_config ========
     290                      .asg 04000H, _SCALAR
     291                      .asg KNL_tick_stub, _THOOKFXN
     292 000008               PRD_config  _SCALAR, _THOOKFXN
1                     
1                             ; Currenly, GCONF routine will pass above 2 parameters
1                             ; to this macro even though we don't use them here.
1                             ; Need to declare related variables as globals in the
1                             ; prd.cdb results in this GCONF inconsistency. This is a
1                             ; known issue to be fixed when Gconf cleanup occurs.
1                     
1                             .asg 0, PRD_swihandle
1                             .eval 0, PRD$prdCount
1                     
1                             ; expand only if the PRD module is configured by the user
1                             .if (PRD$ = 1)
1                                 .if (PRD$NUMOF > 0)
1                                     .if (SWI$ != 1)
1                                         .emsg "PRD objects require the configuration of SWI"
1                                         .mexit
1                                     .endif
1                                     .asg "PRD_swi", PRD_swihandle
1                                 .endif
1                             .endif
1                             
     293              
     294              ;; ======== RTDX_config ========
     295                      .asg 01H, _USERTDX
     296                      .asg 00H, _USERTEXECUTION
     297                      .asg DARAM, _DATAMEMSEG
     298                      .asg 0102H, _BUFMEMSIZE
     299 000008               RTDX_config  _USERTDX, _USERTEXECUTION, _DATAMEMSEG, _BUFMEMSIZE
1                             .if(RTDX_USERTDX = 1)
1                                 .global _RTDX_Buffer, _RTDX_Buffer_Start, _RTDX_Buffer_End
1                     
1                                 ; reserve uninitialized space for RTDX buffer
1        000008               C55_allocateObject isRtdxAligned, _RTDX_Buffer, _bufsize, ".rtdx_data"
2        000008               CHK_nargs "CINIT",  section
2                     
2                             .var objSize                    ; Explicitly decalate a variable
2                                                             ; so that it limits the scope
2                                                             ; to the macro
2                             .eval  0102H, objSize           ; This is the size of
2                                                             ; .object
2                             .if (isRtdxAligned = 2)         ; Does the Obj require alignment
2                                     .if (258 & 0x1) ; if the cinit size is odd
2                                             .eval  objSize + 1, objSize ; Make it even
2                                      .endif
2        000000       _RTDX_Buffer    .usect ".rtdx_data", 258,  0,  1 ; allocate  object at
2                                                             ; even boundary
2                             .else
2                     _RTDX_Buffer    .usect ":section:", objSize,  0,  0
2                                                             ; allocate  object at any
TMS320C55x COFF Assembler         Version 2.04     Tue Apr 15 17:20:23 2003
Copyright (c) 1996-2001           Texas Instruments Incorporated
examplescfg.s55                                                      PAGE   14

2                                                             ; boundary.
2                                                             ; Note that the last parameter
2                                                             ; is  a flag that represents
2                                                             ; if the object has alignment
2                                                             ; requirment or not.
2                             .endif
2                     
1                     
1                                 ; define _RTDX_Buffer_Start
1        000008               C55_allocateObject isDataPtrAligned, _RTDX_Buffer_Start, DATAPTRSIZE, ".rtdx_data"
2        000008               CHK_nargs "CINIT",  section
2                     
2                             .var objSize                    ; Explicitly decalate a variable
2                                                             ; so that it limits the scope
2                                                             ; to the macro
2                             .eval  1, objSize               ; This is the size of
2                                                             ; .object
2                             .if (1 = 2)             ; Does the Obj require alignment
2                                     .if (objSize & 0x1)     ; if the cinit size is odd
2                                             .eval  objSize + 1, objSize ; Make it even
2                                      .endif
2                     _RTDX_Buffer_Start      .usect ":section:", objSize,  0,  1 ; allocate  object at
2                                                             ; even boundary
2                             .else
2        000102       _RTDX_Buffer_Start      .usect ".rtdx_data", 1,  0,  0
2                                                             ; allocate  object at any
2                                                             ; boundary.
2                                                             ; Note that the last parameter
2                                                             ; is  a flag that represents
2                                                             ; if the object has alignment
2                                                             ; requirment or not.
2                             .endif
2                     
1                     
1        000008               C55_cinitHeader CINITALIGN, isDataPtrAligned, _RTDX_Buffer_Start, DATAPTRSIZE, DATAPAGE
2        000008               CHK_nargs "CINIT", page
2                             .var cinitSize                  ; Explicitly decalate a variable
2                                                             ; so that it limits the scope
2                                                             ; to the macro
2                             .eval   1, cinitSize    ; This is the size of
2                                                             ; cinit records.
2                             .if (1 = 2)             ; Does the Obj require alignment
2                                     .if (:objSize: & 0x1)   ; if the cinit size is odd
2                                             .eval  cinitSize + 1, cinitSize ; Make it even
2                                     .endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -