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

📄 thrcontrol.asm

📁 北京瑞泰创新的DM642光盘资料.非常有用.里面有很多源代码
💻 ASM
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen                                    PC Version 4.36 *
;* Date/Time created: Mon Dec 13 12:16:42 2004                                *
;******************************************************************************

;******************************************************************************
;* GLOBAL FILE PARAMETERS                                                     *
;*                                                                            *
;*   Architecture      : TMS320C64xx                                          *
;*   Optimization      : Enabled at level 3                                   *
;*   Optimizing for    : Speed                                                *
;*                       Based on options: -o3, no -ms                        *
;*   Endian            : Little                                               *
;*   Interrupt Thrshld : Disabled                                             *
;*   Memory Model      : Large                                                *
;*   Calls to RTS      : Far                                                  *
;*   Pipelining        : Enabled                                              *
;*   Speculative Load  : Enabled                                              *
;*   Memory Aliases    : Presume not aliases (optimistic)                     *
;*   Debug Info        : No Debug Info                                        *
;*                                                                            *
;******************************************************************************

	.asg	A15, FP
	.asg	B14, DP
	.asg	B15, SP
	.global	$bss

	.global	_externalControl
_externalControl:	.usect	".far",4,128
	.global	_externalControlPrev
_externalControlPrev:	.usect	".far",4,4
;	c:\ti\c6000\cgtools\bin\opt6x.exe -t -DI0 -v6400 -q -O3 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI1416_2 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI1416_5 -w D:/Work/ICETEK-DM642-PCI/Lab/Lab538-JPEGNetWork/obj/ 

	.sect	".text"
	.global	_thrControlStartup

;******************************************************************************
;* FUNCTION NAME: _thrControlStartup                                          *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6,  *
;*                           B7,B8,B9,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
;*                           A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
;*                           B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31      *
;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6,  *
;*                           B7,B8,B9,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
;*                           A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
;*                           B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31      *
;*   Local Frame Size  : 0 Args + 16 Auto + 4 Save = 20 byte                  *
;******************************************************************************
_thrControlStartup:
;** --------------------------------------------------------------------------*

           MVKL    .S2     _MBX_post,B5      ; |90| 
||         MVKL    .S1     _externalControl,A3 ; |87| 

           MVKH    .S2     _MBX_post,B5      ; |90| 
||         MVKH    .S1     _externalControl,A3 ; |87| 

           CALL    .S2     B5                ; |90| 
||         LDW     .D1T1   *A3,A3            ; |87| 

           STW     .D2T2   B3,*SP--(24)      ; |76| 
||         ZERO    .S2     B6                ; |84| 

           STW     .D2T2   B6,*+SP(4)        ; |84| 
||         MVKL    .S2     _mbxProcess,B4    ; |90| 

           STW     .D2T2   B6,*+SP(8)        ; |85| 
||         MVKH    .S2     _mbxProcess,B4    ; |90| 

           STW     .D2T2   B6,*+SP(12)       ; |86| 

           ADDKPC  .S2     RL0,B3,0          ; |90| 
||         STW     .D2T1   A3,*+SP(16)       ; |87| 
||         ADD     .L2     4,SP,B4           ; |90| 
||         MV      .D1X    B4,A4             ; |90| 
||         ZERO    .S1     A6                ; |90| 

RL0:       ; CALL OCCURS                     ; |90| 
           LDW     .D2T2   *++SP(24),B3      ; |92| 
           NOP             4
           RETNOP  .S2     B3,5              ; |92| 
           ; BRANCH OCCURS                   ; |92| 



	.sect	".text"
	.global	_thrControlSet

;******************************************************************************
;* FUNCTION NAME: _thrControlSet                                              *
;*                                                                            *
;*   Regs Modified     : A3,A4,B0                                             *
;*   Regs Used         : A3,A4,B0,B3                                          *
;*   Local Frame Size  : 0 Args + 0 Auto + 0 Save = 0 byte                    *
;******************************************************************************
_thrControlSet:
;** --------------------------------------------------------------------------*
           RETNOP  .S2     B3,2              ; |68| 

           SUB     .D1     A4,10,A4          ; |58| 
||         MVKL    .S1     _externalControl,A3 ; |67| 
||         CMPGT   .L2X    A4,10,B0          ; |58| 

   [!B0]   MVK     .D1     0x1,A4            ; |64| 
||         MVKH    .S1     _externalControl,A3 ; |67| 

           STW     .D1T1   A4,*A3            ; |67| 
           ; BRANCH OCCURS                   ; |68| 



	.sect	".text"
	.global	_thrControlRun

;******************************************************************************
;* FUNCTION NAME: _thrControlRun                                              *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
;*                           B6,B7,B8,B9,B10,SP,A16,A17,A18,A19,A20,A21,A22,  *
;*                           A23,A24,A25,A26,A27,A28,A29,A30,A31,B16,B17,B18, *
;*                           B19,B20,B21,B22,B23,B24,B25,B26,B27,B28,B29,B30, *
;*                           B31                                              *
;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
;*                           B6,B7,B8,B9,B10,B11,SP,A16,A17,A18,A19,A20,A21,  *
;*                           A22,A23,A24,A25,A26,A27,A28,A29,A30,A31,B16,B17, *
;*                           B18,B19,B20,B21,B22,B23,B24,B25,B26,B27,B28,B29, *
;*                           B30,B31                                          *
;*   Local Frame Size  : 0 Args + 16 Auto + 12 Save = 28 byte                 *
;******************************************************************************
_thrControlRun:
;** --------------------------------------------------------------------------*

           MVKL    .S2     _externalControl,B4 ; |105| 
||         MVKL    .S1     _externalControlPrev,A3 ; |105| 

           MVKH    .S2     _externalControl,B4 ; |105| 
||         MVKH    .S1     _externalControlPrev,A3 ; |105| 

           LDW     .D2T2   *B4,B5            ; |105| 
||         LDW     .D1T1   *A3,A3            ; |105| 

           NOP             4
           CMPEQ   .L1X    B5,A3,A0          ; |105| 
   [ A0]   B       .S1     L2                ; |105| 
           STW     .D2T1   A10,*SP--(32)     ; |100| 

   [ A0]   MVKL    .S1     _TSK_timerSem,A10
||         STDW    .D2T2   B11:B10,*+SP(24)  ; |100| 

   [ A0]   MVK     .S2     0x64,B10
|| [ A0]   MVKH    .S1     _TSK_timerSem,A10

   [ A0]   MVKL    .S2     _SEM_pend,B5      ; |129| 
   [ A0]   MVKH    .S2     _SEM_pend,B5      ; |129| 
           ; BRANCH OCCURS                   ; |105| 
;** --------------------------------------------------------------------------*
           MVKL    .S2     _MBX_post,B6      ; |124| 
           MVKH    .S2     _MBX_post,B6      ; |124| 
;** --------------------------------------------------------------------------*
L1:    
           CALL    .S2     B6                ; |124| 

           STW     .D2T2   B5,*+SP(16)       ; |123| 
||         ZERO    .S2     B4                ; |120| 

           STW     .D2T2   B4,*+SP(8)        ; |121| 
||         MVKL    .S1     _externalControlPrev,A3 ; |116| 

           STW     .D2T2   B4,*+SP(12)       ; |122| 
||         MVKL    .S1     _mbxProcess,A4

           MVKH    .S1     _externalControlPrev,A3 ; |116| 
||         STW     .D2T2   B4,*+SP(4)        ; |120| 

           ADDKPC  .S2     RL1,B3,0          ; |124| 
||         ADD     .D2     4,SP,B4           ; |124| 
||         STW     .D1T2   B5,*A3            ; |116| 
||         MVKH    .S1     _mbxProcess,A4
||         ZERO    .L1     A6                ; |124| 

RL1:       ; CALL OCCURS                     ; |124| 
           MVKL    .S1     _TSK_timerSem,A10

           MVKH    .S1     _TSK_timerSem,A10
||         MVK     .S2     0x64,B10

           MVKL    .S2     _SEM_pend,B5      ; |129| 
           MVKH    .S2     _SEM_pend,B5      ; |129| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains control code
;*----------------------------------------------------------------------------*
L2:    
           CALL    .S2     B5                ; |129| 
           ADDKPC  .S2     RL2,B3,2          ; |129| 
           MV      .D2     B10,B4            ; |129| 
           MV      .D1     A10,A4            ; |129| 
RL2:       ; CALL OCCURS                     ; |129| 

           MVKL    .S1     _externalControlPrev,A3 ; |130| 
||         MVKL    .S2     _externalControl,B4 ; |130| 

           MVKH    .S1     _externalControlPrev,A3 ; |130| 
||         MVKH    .S2     _externalControl,B4 ; |130| 

           LDW     .D1T1   *A3,A3            ; |130| 
||         LDW     .D2T2   *B4,B5            ; |130| 

           NOP             4
           CMPEQ   .L1X    B5,A3,A0          ; |130| 
   [!A0]   BNOP    .S1     L1,3              ; |130| 
   [!A0]   MVKL    .S2     _MBX_post,B6      ; |124| 
   [!A0]   MVKH    .S2     _MBX_post,B6      ; |124| 
           ; BRANCH OCCURS                   ; |130| 
;** --------------------------------------------------------------------------*
           BNOP    .S1     L2,3              ; |130| 
           MVKL    .S2     _SEM_pend,B5      ; |129| 
           MVKH    .S2     _SEM_pend,B5      ; |129| 
           ; BRANCH OCCURS                   ; |130| 



	.sect	".text"
	.global	_thrControlInit

;******************************************************************************
;* FUNCTION NAME: _thrControlInit                                             *
;*                                                                            *
;*   Regs Modified     : A3,A4,B4                                             *
;*   Regs Used         : A3,A4,B3,B4                                          *
;*   Local Frame Size  : 0 Args + 0 Auto + 0 Save = 0 byte                    *
;******************************************************************************
_thrControlInit:
;** --------------------------------------------------------------------------*

           MVK     .S1     85,A4             ; |49| 
||         MVKL    .S2     _externalControl,B4 ; |49| 

           MVKH    .S2     _externalControl,B4 ; |49| 
||         MVKL    .S1     _externalControl,A3 ; |53| 

           STW     .D2T1   A4,*B4            ; |49| 
||         MVKH    .S1     _externalControl,A3 ; |53| 

           RETNOP  .S2     B3,2              ; |54| 
||         LDW     .D1T1   *A3,A3            ; |53| 

           MVKL    .S2     _externalControlPrev,B4 ; |53| 
           MVKH    .S2     _externalControlPrev,B4 ; |53| 
           STW     .D2T1   A3,*B4            ; |53| 
           ; BRANCH OCCURS                   ; |54| 


;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES                                              *
;******************************************************************************
	.global	_SEM_pend
	.global	_MBX_post
	.global	_TSK_timerSem
	.global	_mbxProcess

⌨️ 快捷键说明

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