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

📄 dbgm.asm

📁 DM642 ti c6000 多任务/ 中断使用示例
💻 ASM
📖 第 1 页 / 共 4 页
字号:
RL8:       ; CALL OCCURS                     ; |93| 

	.endblock	26

	.line	27

           LDW     .D2T2   *+SP(4),B0        ; |94| 

           NOP             4

   [ B0]   BNOP    .S1     L3,5              ; |94| 

           ; BRANCH OCCURS                   ; |94| 

;** --------------------------------------------------------------------------*

L4:    

	.line	28

           ZERO    .D1     A4                ; |95| 

	.line	29

           LDW     .D2T2   *++SP(16),B3      ; |96| 

           NOP             4

           RETNOP  .S2     B3,5              ; |96| 

           ; BRANCH OCCURS                   ; |96| 

	.endfunc	96,000080000h,16







	.sect	".text"

	.global	_InputData

	.sym	_InputData,_InputData, 35, 2, 0

	.func	104



;******************************************************************************

;* FUNCTION NAME: _InputData                                                  *

;*                                                                            *

;*   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,DP,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 + 0 Auto + 4 Save = 4 byte                    *

;******************************************************************************

_InputData:

;** --------------------------------------------------------------------------*

	.line	2

           STW     .D2T2   B3,*SP--(8)       ; |105| 

           NOP             2

	.line	5

           MVKL    .S1     _PseudoRand16,A3  ; |108| 

           MVKH    .S1     _PseudoRand16,A3  ; |108| 

           CALL    .S2X    A3                ; |108| 

           MVK     .S2     (_Seed$2-$bss),B4 ; |108| 

           ADD     .D2     DP,B4,B4          ; |108| 

           ADDKPC  .S2     RL9,B3,1          ; |108| 

           MV      .D1X    B4,A4             ; |108| 

RL9:       ; CALL OCCURS                     ; |108| 

	.line	6

           LDW     .D2T2   *++SP(8),B3       ; |109| 

           NOP             4

           RETNOP  .S2     B3,5              ; |109| 

           ; BRANCH OCCURS                   ; |109| 

	.endfunc	109,000080000h,8







	.sect	".text"

	.global	_OutputData

	.sym	_OutputData,_OutputData, 32, 2, 0

	.func	119



;******************************************************************************

;* FUNCTION NAME: _OutputData                                                 *

;*                                                                            *

;*   Regs Modified     : B4,B5,SP                                             *

;*   Regs Used         : A4,B3,B4,B5,DP,SP                                    *

;*   Local Frame Size  : 0 Args + 4 Auto + 0 Save = 4 byte                    *

;******************************************************************************

_OutputData:

;** --------------------------------------------------------------------------*

	.line	2

	.sym	_Data,4, 3, 17, 16

	.sym	_Data,4, 3, 1, 16

           SUB     .D2     SP,8,SP           ; |120| 

           STH     .D2T1   A4,*+SP(4)        ; |120| 

           NOP             2

	.line	3

           LDW     .D2T2   *+DP(_OutputDataPtr),B5 ; |121| 

           LDH     .D2T2   *+SP(4),B4        ; |121| 

           NOP             4

           STH     .D2T2   B4,*B5            ; |121| 

           NOP             2

	.line	4

           RETNOP  .S2     B3,4              ; |122| 

           ADD     .D2     8,SP,SP           ; |122| 

           ; BRANCH OCCURS                   ; |122| 

	.endfunc	122,000000000h,8







	.sect	".text"

	.global	_Fir32

	.sym	_Fir32,_Fir32, 36, 2, 0

	.func	131



;******************************************************************************

;* FUNCTION NAME: _Fir32                                                      *

;*                                                                            *

;*   Regs Modified     : A3,A4,B0,B4,B5,B6,B7,SP                              *

;*   Regs Used         : A3,A4,B0,B3,B4,B5,B6,B7,DP,SP                        *

;*   Local Frame Size  : 0 Args + 20 Auto + 0 Save = 20 byte                  *

;******************************************************************************

_Fir32:

;** --------------------------------------------------------------------------*

	.line	2

	.sym	_x,4, 19, 17, 32

	.sym	_coeff,20, 19, 17, 32

	.sym	_x,4, 19, 1, 32

	.sym	_coeff,8, 19, 1, 32

	.sym	_sum,12, 4, 1, 32

	.sym	_i,16, 4, 1, 32

	.sym	_mfreg0_value,20, 4, 1, 32

           SUB     .D2     SP,24,SP          ; |132| 

           MV      .D1X    B4,A3             ; |132| 

           STW     .D2T1   A3,*+SP(8)        ; |132| 

           STW     .D2T1   A4,*+SP(4)        ; |132| 

           NOP             2

	.line	7

           MVK     .D2     15,B4             ; |137| 

           STW     .D2T2   B4,*+SP(16)       ; |137| 

           NOP             2

	.line	8

           LDW     .D2T2   *+SP(4),B5        ; |138| 

           LDW     .D2T2   *+SP(8),B7        ; |138| 

           NOP             2

           MV      .S2     B4,B6             ; |138| 

           LDH     .D2T2   *+B5[B4],B4       ; |138| 

           LDH     .D2T2   *+B7[B6],B6       ; |138| 

           NOP             1

           LDW     .D2T2   *+DP(_GUARD_BITS),B5 ; |138| 

           NOP             2

           MPY     .M2     B6,B4,B4          ; |138| 

           NOP             1

           SHR     .S2     B4,B5,B4          ; |138| 

           STW     .D2T2   B4,*+SP(12)       ; |138| 

           NOP             2

	.line	14

           ZERO    .D2     B4                ; |144| 

           STW     .D2T2   B4,*+SP(20)       ; |144| 

           NOP             2

	.line	15

           MVKH    .S2     0x8000000,B4      ; |145| 

           STW     .D2T2   B4,*+SP(20)       ; |145| 

           NOP             2

	.line	16

           LDW     .D2T2   *+SP(20),B4       ; |146| 

           NOP             4

           SET     .S2     B4,26,26,B4       ; |146| 

           STW     .D2T2   B4,*+SP(20)       ; |146| 

           NOP             2

	.line	17

           LDW     .D2T1   *+SP(20),A4       ; |147| 

           NOP             2

           MVKL    .S1     0x1bc0014,A3      ; |147| 

           MVKH    .S1     0x1bc0014,A3      ; |147| 

           STW     .D1T1   A4,*A3            ; |147| 

           NOP             2

	.line	30

           LDW     .D2T2   *+SP(16),B4       ; |160| 

           NOP             4

           SUB     .D2     B4,1,B4           ; |160| 

           CMPLT   .L2     B4,0,B0           ; |160| 

   [ B0]   BNOP    .S1     L6,4              ; |160| 

           STW     .D2T2   B4,*+SP(16)       ; |160| 

           ; BRANCH OCCURS                   ; |160| 

;*----------------------------------------------------------------------------*

;*   SOFTWARE PIPELINE INFORMATION

;*      Disqualified loop: Software pipelining disabled

;*----------------------------------------------------------------------------*

L5:    

	.line	32

           LDW     .D2T2   *+SP(8),B5        ; |162| 



           LDW     .D2T2   *+SP(4),B4        ; |162| 

||         MV      .S2     B4,B7

||         MV      .L2     B4,B6



           NOP             3

           LDH     .D2T2   *+B5[B6],B5       ; |162| 

           LDH     .D2T2   *+B4[B7],B4       ; |162| 

           NOP             1

           LDW     .D2T2   *+DP(_GUARD_BITS),B6 ; |162| 

           LDW     .D2T2   *+SP(12),B7       ; |162| 

           NOP             1

           MPY     .M2     B5,B4,B4          ; |162| 

           NOP             1

           SHR     .S2     B4,B6,B4          ; |162| 

           ADD     .D2     B4,B7,B4          ; |162| 

           STW     .D2T2   B4,*+SP(12)       ; |162| 

           NOP             2

	.line	33

           LDW     .D2T1   *+SP(16),A3       ; |163| 

           LDW     .D2T1   *+SP(4),A4        ; |163| 

           NOP             4



           LDH     .D1T1   *+A4[A3],A3       ; |163| 

||         ADD     .D2X    1,A3,B5           ; |163| 



           NOP             3

           MV      .D2X    A4,B4             ; |163| 

           STH     .D2T1   A3,*+B4[B5]       ; |163| 

           NOP             2

	.line	34

           LDW     .D2T2   *+SP(16),B4       ; |164| 

           NOP             4

           SUB     .D2     B4,1,B4           ; |164| 

           CMPLT   .L2     B4,0,B0           ; |164| 

   [!B0]   BNOP    .S1     L5,4              ; |164| 

           STW     .D2T2   B4,*+SP(16)       ; |164| 

           ; BRANCH OCCURS                   ; |164| 

;** --------------------------------------------------------------------------*

L6:    

	.line	42

           ZERO    .D2     B4                ; |172| 

           STW     .D2T2   B4,*+SP(20)       ; |172| 

           NOP             2

	.line	43

           MVKH    .S2     0x8000000,B4      ; |173| 

           STW     .D2T2   B4,*+SP(20)       ; |173| 

           NOP             2

	.line	44

           LDW     .D2T2   *+SP(20),B4       ; |174| 

           NOP             4

           CLR     .S2     B4,26,26,B4       ; |174| 

           STW     .D2T2   B4,*+SP(20)       ; |174| 

           NOP             2

	.line	45

           LDW     .D2T2   *+SP(20),B4       ; |175| 

           NOP             2

           MVKL    .S1     0x1bc0014,A3      ; |175| 

           MVKH    .S1     0x1bc0014,A3      ; |175| 

           STW     .D1T2   B4,*A3            ; |175| 

           NOP             2

	.line	47

           LDW     .D2T1   *+SP(12),A4       ; |177| 

           NOP             4

	.line	48

           RETNOP  .S2     B3,4              ; |178| 

           ADDK    .S2     24,SP             ; |178| 

           ; BRANCH OCCURS                   ; |178| 

	.endfunc	178,000000000h,24







	.sect	".text"

	.global	_PseudoRand16

	.sym	_PseudoRand16,_PseudoRand16, 35, 2, 0

	.func	194



;******************************************************************************

;* FUNCTION NAME: _PseudoRand16                                               *

;*                                                                            *

;*   Regs Modified     : A3,A4,B4,B5,B6,B7,SP                                 *

;*   Regs Used         : A3,A4,B3,B4,B5,B6,B7,DP,SP                           *

;*   Local Frame Size  : 0 Args + 4 Auto + 0 Save = 4 byte                    *

;******************************************************************************

_PseudoRand16:

;** --------------------------------------------------------------------------*

	.line	2

	.sym	_Seed,4, 19, 17, 32

	.sym	_Seed,4, 19, 1, 32

           SUB     .D2     SP,8,SP           ; |195| 

           STW     .D2T1   A4,*+SP(4)        ; |195| 

           NOP             2

	.line	3



           LDH     .D2T2   *+DP(_Mult),B5    ; |196| 

||         MV      .S2X    A4,B4



           LDH     .D2T2   *B4,B6            ; |196| 

           NOP             1

           LDH     .D2T2   *+DP(_Inc),B4     ; |196| 

           NOP             1

           MV      .D2X    A4,B7             ; |196| 

           MPY     .M2     B5,B6,B5          ; |196| 

           NOP             1

           ADD     .D2     B4,B5,B4          ; |196| 

           EXTU    .S2     B4,16,16,B4       ; |196| 

           STH     .D2T2   B4,*B7            ; |196| 

           NOP             2

	.line	4

           LDW     .D2T1   *+SP(4),A3        ; |197| 

           NOP             4

           LDH     .D1T1   *A3,A4            ; |197| 

           NOP             4

	.line	5

           RETNOP  .S2     B3,4              ; |198| 

           ADD     .D2     8,SP,SP           ; |198| 

           ; BRANCH OCCURS                   ; |198| 

	.endfunc	198,000000000h,8







	.sect	".text"

	.global	_PerformIsr1

	.sym	_PerformIsr1,_PerformIsr1, 32, 2, 0

	.func	211



;******************************************************************************

;* FUNCTION NAME: _PerformIsr1                                                *

;*                                                                            *

;*   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,DP,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 + 0 Auto + 212 Save = 212 byte                *

;******************************************************************************

_PerformIsr1:

;** --------------------------------------------------------------------------*

	.line	2

           ADDK    .S2     -216,SP           ; |212| 

           STW     .D2T2   B31,*+SP(216)     ; |212| 

           STDW    .D2T2   B29:B28,*+SP(208) ; |212| 

           STDW    .D2T2   B27:B26,*+SP(200) ; |212| 

           STDW    .D2T2   B25:B24,*+SP(192) ; |212| 

           STDW    .D2T2   B23:B22,*+SP(184) ; |212| 

           STDW    .D2T2   B21:B20,*+SP(176) ; |212| 

           STDW    .D2T2   B19:B18,*+SP(168) ; |212| 

           STDW    .D2T2   B17:B16,*+SP(160) ; |212| 

           STW     .D2T2   B30,*+SP(156)     ; |212| 

           STW     .D2T1   A31,*+SP(152)     ; |212| 

           STDW    .D2T1   A29:A28,*+SP(144) ; |212| 

           STDW    .D2T1   A27:A26,*+SP(136) ; |212| 

           STDW    .D2T1   A25:A24,*+SP(128) ; |212| 

           STDW    .D2T1   A23:A22,*+SP(120) ; |212| 

           STDW    .D2T1   A21:A20,*+SP(112) ; |212| 

           STDW    .D2T1   A19:A18,*+SP(104) ; |212| 

           STDW    .D2T1   A17:A16,*+SP(96)  ; |212| 

           STW     .D2T1   A30,*+SP(92)      ; |212| 

           STW     .D2T2   B9,*+SP(88)       ; |212| 

           STDW    .D2T2   B7:B6,*+SP(80)    ; |212| 

           STDW    .D2T2   B5:B4,*+SP(72)    ; |212| 

⌨️ 快捷键说明

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