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

📄 realtime.asm

📁 使用在ti dm64xx 系列的realtime system
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;*                           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                    *
;******************************************************************************

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o1) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_InputData:
;** --------------------------------------------------------------------------*
	.line	2
           STW     .D2T2   B3,*SP--(8)       ; |102| 
	.line	5
           MVKL    .S2     _PseudoRand16,B4  ; |105| 
           MVKH    .S2     _PseudoRand16,B4  ; |105| 
           CALL    .S2     B4                ; |105| 
           MVK     .S1     (_Seed$2-$bss),A3 ; |105| 
           ADDKPC  .S2     RL7,B3,2          ; |105| 
           ADD     .D1X    DP,A3,A4          ; |105| 
RL7:       ; CALL OCCURS                     ; |105| 
	.line	6
           LDW     .D2T2   *++SP(8),B3       ; |106| 
           NOP             4
           RETNOP  .S2     B3,5              ; |106| 
           ; BRANCH OCCURS                   ; |106| 
	.endfunc	106,000080000h,8



	.sect	".text"
	.global	_OutputData
	.sym	_OutputData,_OutputData, 32, 2, 0
	.func	116

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

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o1) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_OutputData:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_Data,4, 3, 17, 16
	.sym	_Data,4, 3, 4, 16
	.line	3
           LDW     .D2T2   *+DP(_OutputDataPtr),B4 ; |118| 
           NOP             4
           STH     .D2T1   A4,*B4            ; |118| 
	.line	4
           RETNOP  .S2     B3,5              ; |119| 
           ; BRANCH OCCURS                   ; |119| 
	.endfunc	119,000000000h,0



	.sect	".text"
	.global	_Fir32
	.sym	_Fir32,_Fir32, 36, 2, 0
	.func	128

;******************************************************************************
;* FUNCTION NAME: _Fir32                                                      *
;*                                                                            *
;*   Regs Modified     : A0,A3,A4,A5,A6,A7,A8                                 *
;*   Regs Used         : A0,A3,A4,A5,A6,A7,A8,B3,B4                           *
;*   Local Frame Size  : 0 Args + 0 Auto + 0 Save = 0 byte                    *
;******************************************************************************

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o1) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_Fir32:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_x,4, 19, 17, 32
	.sym	_coeff,20, 19, 17, 32
	.sym	_coeff,7, 19, 4, 32
	.sym	_x,3, 19, 4, 32
	.sym	_sum,4, 4, 4, 32
	.sym	_i,5, 4, 4, 32

           MV      .D1     A4,A3             ; |129| 
||         MV      .S1X    B4,A7             ; |129| 

	.line	7
           LDH     .D1T1   *+A3(30),A5       ; |134| 
           LDH     .D1T1   *+A7(30),A4       ; |134| 
           NOP             4
           MPY     .M1     A5,A4,A4          ; |134| 
           NOP             1
           SHR     .S1     A4,4,A4           ; |134| 
	.line	8
           MVK     .D1     0xe,A5            ; |135| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Software pipelining disabled
;*----------------------------------------------------------------------------*
L4:    
	.line	10
           LDH     .D1T1   *+A7[A5],A8       ; |137| 
           LDH     .D1T1   *+A3[A5],A6       ; |137| 
           NOP             4
           MPY     .M1     A6,A8,A8          ; |137| 
           NOP             1
           SHR     .S1     A8,4,A8           ; |137| 
           ADD     .D1     A8,A4,A4          ; |137| 
	.line	11
           ADDAH   .D1     A3,A5,A8          ; |138| 
           STH     .D1T1   A6,*+A8(2)        ; |138| 
	.line	12
           SUB     .D1     A5,1,A5           ; |139| 
           CMPLT   .L1     A5,0,A0           ; |139| 
   [!A0]   BNOP    .S1     L4,5              ; |139| 
           ; BRANCH OCCURS                   ; |139| 
;** --------------------------------------------------------------------------*
	.line	13
	.line	14
           RETNOP  .S2     B3,5              ; |141| 
           ; BRANCH OCCURS                   ; |141| 
	.endfunc	141,000000000h,0



	.sect	".text"
	.global	_PseudoRand16
	.sym	_PseudoRand16,_PseudoRand16, 35, 2, 0
	.func	157

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

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o1) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_PseudoRand16:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_Seed,4, 19, 17, 32
	.sym	_Seed,4, 19, 4, 32
	.line	3
           LDH     .D1T1   *A4,A3            ; |159| 
           NOP             3
           MVK     .S1     31821,A5          ; |159| 
           MPY     .M1     A3,A5,A3          ; |159| 
           NOP             1
           ADDK    .S1     13849,A3          ; |159| 

           EXT     .S1     A3,16,16,A4       ; |159| 
||         STH     .D1T1   A3,*A4            ; |159| 

	.line	4
	.line	5
           RETNOP  .S2     B3,5              ; |161| 
           ; BRANCH OCCURS                   ; |161| 
	.endfunc	161,000000000h,0



	.sect	".text"
	.global	_PerformIsr1
	.sym	_PerformIsr1,_PerformIsr1, 32, 2, 0
	.func	173

;******************************************************************************
;* 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                *
;******************************************************************************

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o1) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_PerformIsr1:
;** --------------------------------------------------------------------------*
	.line	2
           ADDK    .S2     -216,SP           ; |174| 
           STW     .D2T2   B31,*+SP(216)     ; |174| 
           STDW    .D2T2   B29:B28,*+SP(208) ; |174| 
           STDW    .D2T2   B27:B26,*+SP(200) ; |174| 
           STDW    .D2T2   B25:B24,*+SP(192) ; |174| 
           STDW    .D2T2   B23:B22,*+SP(184) ; |174| 
           STDW    .D2T2   B21:B20,*+SP(176) ; |174| 
           STDW    .D2T2   B19:B18,*+SP(168) ; |174| 
           STDW    .D2T2   B17:B16,*+SP(160) ; |174| 
           STW     .D2T2   B30,*+SP(156)     ; |174| 
           STW     .D2T1   A31,*+SP(152)     ; |174| 
           STDW    .D2T1   A29:A28,*+SP(144) ; |174| 
           STDW    .D2T1   A27:A26,*+SP(136) ; |174| 
           STDW    .D2T1   A25:A24,*+SP(128) ; |174| 
           STDW    .D2T1   A23:A22,*+SP(120) ; |174| 
           STDW    .D2T1   A21:A20,*+SP(112) ; |174| 
           STDW    .D2T1   A19:A18,*+SP(104) ; |174| 
           STDW    .D2T1   A17:A16,*+SP(96)  ; |174| 
           STW     .D2T1   A30,*+SP(92)      ; |174| 
           STW     .D2T2   B9,*+SP(88)       ; |174| 
           STDW    .D2T2   B7:B6,*+SP(80)    ; |174| 
           STDW    .D2T2   B5:B4,*+SP(72)    ; |174| 
           STDW    .D2T2   B3:B2,*+SP(64)    ; |174| 
           STDW    .D2T2   B1:B0,*+SP(56)    ; |174| 
           STW     .D2T2   B8,*+SP(52)       ; |174| 
           STW     .D2T1   A9,*+SP(48)       ; |174| 
           STDW    .D2T1   A7:A6,*+SP(40)    ; |174| 
           STDW    .D2T1   A5:A4,*+SP(32)    ; |174| 
           STDW    .D2T1   A3:A2,*+SP(24)    ; |174| 
           STDW    .D2T1   A1:A0,*+SP(16)    ; |174| 
           STW     .D2T1   A8,*+SP(12)       ; |174| 
	.line	3
           MVK     .D2     1,B4              ; |175| 
           STW     .D2T2   B4,*+DP(_WhatIsrActive) ; |175| 
	.line	4
           LDW     .D2T2   *+DP(_Isr0),B4    ; |176| 
           NOP             4
           ADD     .D2     1,B4,B4           ; |176| 
           STW     .D2T2   B4,*+DP(_Isr0)    ; |176| 
	.line	5
           LDW     .D2T2   *+DP(_Isr0),B4    ; |177| 
           NOP             4
           AND     .D2     7,B4,B0           ; |177| 
   [ B0]   BNOP    .S1     L5,5              ; |177| 
           ; BRANCH OCCURS                   ; |177| 
;** --------------------------------------------------------------------------*
	.line	6
           MVKL    .S1     _TakeALongTime,A3 ; |178| 
           MVKH    .S1     _TakeALongTime,A3 ; |178| 
           CALL    .S2X    A3                ; |178| 
           ADDKPC  .S2     RL8,B3,4          ; |178| 
RL8:       ; CALL OCCURS                     ; |178| 
;** --------------------------------------------------------------------------*
L5:    
	.line	7
           ZERO    .D2     B4                ; |179| 
           STW     .D2T2   B4,*+DP(_WhatIsrActive) ; |179| 
	.line	8
           LDW     .D2T2   *+DP(_timer0value),B4 ; |180| 
           NOP             4
           ADD     .D2     1,B4,B4           ; |180| 
           STW     .D2T2   B4,*+DP(_timer0value) ; |180| 
	.line	9
           LDDW    .D2T2   *+SP(200),B27:B26 ; |181| 
           LDDW    .D2T2   *+SP(192),B25:B24 ; |181| 
           LDDW    .D2T2   *+SP(184),B23:B22 ; |181| 
           LDDW    .D2T2   *+SP(176),B21:B20 ; |181| 
           LDDW    .D2T2   *+SP(168),B19:B18 ; |181| 
           LDDW    .D2T2   *+SP(160),B17:B16 ; |181| 
           LDW     .D2T2   *+SP(156),B30     ; |181| 
           LDW     .D2T1   *+SP(152),A31     ; |181| 
           LDDW    .D2T1   *+SP(144),A29:A28 ; |181| 
           LDDW    .D2T1   *+SP(136),A27:A26 ; |181| 
           LDDW    .D2T1   *+SP(128),A25:A24 ; |181| 
           LDDW    .D2T1   *+SP(120),A23:A22 ; |181| 
           LDDW    .D2T1   *+SP(112),A21:A20 ; |181| 
           LDDW    .D2T1   *+SP(104),A19:A18 ; |181| 
           LDDW    .D2T1   *+SP(96),A17:A16  ; |181| 
           LDW     .D2T1   *+SP(92),A30      ; |181| 
           LDW     .D2T2   *+SP(88),B9       ; |181| 
           LDDW    .D2T2   *+SP(80),B7:B6    ; |181| 
           LDDW    .D2T2   *+SP(64),B3:B2    ; |181| 
           LDDW    .D2T2   *+SP(56),B1:B0    ; |181| 
           LDW     .D2T2   *+SP(52),B8       ; |181| 
           LDW     .D2T1   *+SP(48),A9       ; |181| 
           LDDW    .D2T1   *+SP(40),A7:A6    ; |181| 
           LDDW    .D2T1   *+SP(32),A5:A4    ; |181| 
           LDDW    .D2T1   *+SP(24),A3:A2    ; |181| 
           LDDW    .D2T1   *+SP(16),A1:A0    ; |181| 
           LDW     .D2T1   *+SP(12),A8       ; |181| 
           LDW     .D2T2   *+SP(216),B31     ; |181| 

           RET     .S2     IRP               ; |181| 
||         LDDW    .D2T2   *+SP(208),B29:B28 ; |181| 

⌨️ 快捷键说明

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