📄 dbgm.asm
字号:
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 + -