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

📄 sysctrl.asm

📁 用于DSP下摄像机的图像抓取、图像处理和传输、以及与上位机TCP/IP通信的工程文件。基于Texas Instruments Code Composer Studio实现。
💻 ASM
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen                                    PC Version 4.32 *
;* Date/Time created: Tue Apr 14 17:53:23 2009                                *
;******************************************************************************

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

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


	.sect	".cinit"
	.align	8
	.field  	4,32
	.field  	_g_nTrainStatus+0,32
	.field  	0,32			; _g_nTrainStatus @ 0

	.sect	".text"
	.global	_g_nTrainStatus
_g_nTrainStatus:	.usect	".far",4,4

	.sect	".cinit"
	.align	8
	.field  	4,32
	.field  	_g_nTrainLightStatus+0,32
	.field  	0,32			; _g_nTrainLightStatus @ 0

	.sect	".text"
	.global	_g_nTrainLightStatus
_g_nTrainLightStatus:	.usect	".far",4,4

	.sect	".cinit"
	.align	8
	.field  	4,32
	.field  	_g_nTrainProgress+0,32
	.field  	0,32			; _g_nTrainProgress @ 0

	.sect	".text"
	.global	_g_nTrainProgress
_g_nTrainProgress:	.usect	".far",4,4

	.sect	".cinit"
	.align	8
	.field  	4,32
	.field  	_g_nReadStatus+0,32
	.field  	0,32			; _g_nReadStatus @ 0

	.sect	".text"
	.global	_g_nReadStatus
_g_nReadStatus:	.usect	".far",4,4
;	c:\ti\c6000\cgtools\bin\opt6x.exe -a -DI100 -v6400 -q -O3 C:\DOCUME~1\yn\LOCALS~1\Temp\TI3036_2 C:\DOCUME~1\yn\LOCALS~1\Temp\TI3036_5 -w ../TMP 

	.sect	".text"
	.global	_TaskSchedule

;******************************************************************************
;* FUNCTION NAME: _TaskSchedule                                               *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,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,A10,B0,B1,B2,B3,B4,B5, *
;*                           B6,B7,B8,B9,B13,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 + 20 Auto + 8 Save = 28 byte                  *
;******************************************************************************
_TaskSchedule:
;** --------------------------------------------------------------------------*
           STW     .D2T1   A10,*SP--(32)     ; |15| 

           STW     .D2T2   B13,*+SP(28)      ; |15| 
||         MVK     .D1     0xffffffff,A10

           MVKL    .S2     _MBX_pend,B5      ; |19| 

           MVKH    .S2     _MBX_pend,B5      ; |19| 
||         MVKL    .S1     _hMbxSchedule,A3  ; |19| 

;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains control code
;*----------------------------------------------------------------------------*
L1:    

           CALL    .S2     B5                ; |19| 
||         MVKH    .S1     _hMbxSchedule,A3  ; |19| 

           LDW     .D1T1   *A3,A4            ; |19| 
           ADDKPC  .S2     RL0,B3,1          ; |19| 
           ADD     .D2     4,SP,B4           ; |19| 
           MV      .D1     A10,A6            ; |19| 
RL0:       ; CALL OCCURS                     ; |19| 
           LDB     .D2T2   *+SP(21),B0       ; |20| 
           NOP             4
   [!B0]   BNOP    .S1     L4,3              ; |20| 

   [ B0]   CMPEQ   .L2     B0,1,B1           ; |20| 
|| [!B0]   MVKL    .S2     _MBX_post,B5      ; |24| 

   [!B0]   MVKH    .S2     _MBX_post,B5      ; |24| 
|| [!B0]   MVKL    .S1     _hMbxNetNormal,A3 ; |24| 

           ; BRANCH OCCURS                   ; |20| 
;** --------------------------------------------------------------------------*
   [ B1]   BNOP    .S1     L3,3              ; |20| 
   [ B1]   MVKL    .S2     _MBX_post,B5      ; |42| 

   [ B1]   MVKH    .S2     _MBX_post,B5      ; |42| 
|| [ B1]   MVKL    .S1     _hMbxNetPrior,A3  ; |42| 
|| [!B1]   CMPEQ   .L2     B0,3,B1           ; |20| 

           ; BRANCH OCCURS                   ; |20| 
;** --------------------------------------------------------------------------*
   [ B1]   BNOP    .S1     L2,3              ; |20| 

   [!B1]   CMPEQ   .L2     B0,4,B0           ; |20| 
|| [ B1]   MVKL    .S2     _MBX_post,B5      ; |30| 

   [ B1]   MVKH    .S2     _MBX_post,B5      ; |30| 
|| [ B1]   MVKL    .S1     _hMbxGet,A3       ; |30| 

           ; BRANCH OCCURS                   ; |20| 
;** --------------------------------------------------------------------------*
   [!B0]   BNOP    .S1     L1,1              ; |20| 
   [!B0]   MVKL    .S2     _MBX_pend,B5      ; |19| 

   [!B0]   MVKH    .S2     _MBX_pend,B5      ; |19| 
|| [!B0]   MVKL    .S1     _hMbxSchedule,A3  ; |19| 

   [ B0]   MVKL    .S2     _MBX_post,B5      ; |36| 

   [ B0]   MVKH    .S2     _MBX_post,B5      ; |36| 
|| [ B0]   MVKL    .S1     _hMbxCfg,A3       ; |36| 

           ; BRANCH OCCURS                   ; |20| 
;** --------------------------------------------------------------------------*

           CALL    .S2     B5                ; |36| 
||         MVKH    .S1     _hMbxCfg,A3       ; |36| 

           LDW     .D1T1   *A3,A4            ; |36| 
           ADDKPC  .S2     RL1,B3,1          ; |36| 
           ADD     .D2     4,SP,B4           ; |36| 
           ZERO    .D1     A6                ; |36| 
RL1:       ; CALL OCCURS                     ; |36| 
           BNOP    .S1     L1,3              ; |37| 
           MVKL    .S2     _MBX_pend,B5      ; |19| 

           MVKL    .S1     _hMbxSchedule,A3  ; |19| 
||         MVKH    .S2     _MBX_pend,B5      ; |19| 

           ; BRANCH OCCURS                   ; |37| 
;** --------------------------------------------------------------------------*
L2:    

           CALL    .S2     B5                ; |30| 
||         MVKH    .S1     _hMbxGet,A3       ; |30| 

           LDW     .D1T1   *A3,A4            ; |30| 
           ADDKPC  .S2     RL2,B3,1          ; |30| 
           ADD     .D2     4,SP,B4           ; |30| 
           ZERO    .D1     A6                ; |30| 
RL2:       ; CALL OCCURS                     ; |30| 
           BNOP    .S1     L1,3              ; |31| 
           MVKL    .S2     _MBX_pend,B5      ; |19| 

           MVKL    .S1     _hMbxSchedule,A3  ; |19| 
||         MVKH    .S2     _MBX_pend,B5      ; |19| 

           ; BRANCH OCCURS                   ; |31| 
;** --------------------------------------------------------------------------*
L3:    

           CALL    .S2     B5                ; |42| 
||         MVKH    .S1     _hMbxNetPrior,A3  ; |42| 

           LDW     .D1T1   *A3,A4            ; |42| 
           ADDKPC  .S2     RL3,B3,1          ; |42| 
           ADD     .D2     4,SP,B4           ; |42| 
           ZERO    .D1     A6                ; |42| 
RL3:       ; CALL OCCURS                     ; |42| 
           BNOP    .S1     L1,3              ; |43| 
           MVKL    .S2     _MBX_pend,B5      ; |19| 

           MVKL    .S1     _hMbxSchedule,A3  ; |19| 
||         MVKH    .S2     _MBX_pend,B5      ; |19| 

           ; BRANCH OCCURS                   ; |43| 
;** --------------------------------------------------------------------------*
L4:    

           CALL    .S2     B5                ; |24| 
||         MVKH    .S1     _hMbxNetNormal,A3 ; |24| 

           LDW     .D1T1   *A3,A4            ; |24| 
           ADDKPC  .S2     RL4,B3,1          ; |24| 
           ADD     .D2     4,SP,B4           ; |24| 
           ZERO    .D1     A6                ; |24| 
RL4:       ; CALL OCCURS                     ; |24| 
           BNOP    .S1     L1,3              ; |25| 
           MVKL    .S2     _MBX_pend,B5      ; |19| 

           MVKL    .S1     _hMbxSchedule,A3  ; |19| 
||         MVKH    .S2     _MBX_pend,B5      ; |19| 

           ; BRANCH OCCURS                   ; |25| 


;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES                                              *
;******************************************************************************
	.global	_MBX_pend
	.global	_MBX_post
	.global	_hMbxCfg
	.global	_hMbxGet
	.global	_hMbxNetNormal
	.global	_hMbxNetPrior
	.global	_hMbxSchedule

⌨️ 快捷键说明

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