📄 rxdetector.asm
字号:
|| MVKL .S1 _trace,A4 ; |201|
|| MVKL .S2 RL3,B3 ; |201|
STW .D2T1 A0,*+SP(12) ; |201|
|| MVKH .S2 RL3,B3 ; |201|
|| MVKH .S1 _trace,A4 ; |201|
RL3: ; CALL OCCURS ; |201|
B .S1 L4 ; |201|
NOP 5
; BRANCH OCCURS ; |201|
;** --------------------------------------------------------------------------*
L2:
;** -----------------------g5:
;** 188 ----------------------- C$2 = pDetectorStat->pcDataBuff+pDetectorStat->uiNextWriteByte;
;** 188 ----------------------- *C$2 = *C$2|(int)a<<4;
;** 189 ----------------------- C$1 = pDetectorStat->pcDataBuff+pDetectorStat->uiNextWriteByte+1u;
;** 189 ----------------------- *C$1 = *C$1|(int)b<<4;
;** 190 ----------------------- pDetectorStat->uiNextWriteByte = pDetectorStat->uiNextWriteByte+2u;
;** 191 ----------------------- pDetectorStat->uiBytesWritten = pDetectorStat->uiBytesWritten+2u;
;** 191 ----------------------- goto g7;
.line 47
LDW .D1T1 *+A10(20),A0 ; |188|
LDW .D1T1 *+A10(28),A3 ; |188|
SHL .S2 B7,4,B4 ; |188|
NOP 3
ADD .D1 A3,A0,A0 ; |188|
LDB .D1T1 *A0,A3 ; |188|
NOP 4
OR .S2X B4,A3,B4 ; |188|
STB .D1T2 B4,*A0 ; |188|
.line 48
LDW .D1T1 *+A10(20),A3 ; |189|
LDW .D1T1 *+A10(28),A0 ; |189|
SHL .S1 A4,4,A4 ; |189|
NOP 3
ADD .D1 A0,A3,A0 ; |189|
ADD .D1 1,A0,A0 ; |189|
LDB .D1T1 *A0,A3 ; |189|
NOP 4
OR .S1 A4,A3,A3 ; |189|
STB .D1T1 A3,*A0 ; |189|
.line 49
LDW .D1T1 *+A10(28),A0 ; |190|
NOP 4
ADD .D1 2,A0,A0 ; |190|
STW .D1T1 A0,*+A10(28) ; |190|
.line 50
LDW .D1T1 *+A10(40),A0 ; |191|
B .S1 L4 ; |191|
NOP 3
ADD .D1 2,A0,A0 ; |191|
STW .D1T1 A0,*+A10(40) ; |191|
; BRANCH OCCURS ; |191|
;** --------------------------------------------------------------------------*
L3:
;** -----------------------g6:
;** 195 ----------------------- *(pDetectorStat->uiNextWriteByte+pDetectorStat->pcDataBuff) = a&0xf;
;** 196 ----------------------- *(pDetectorStat->uiNextWriteByte+pDetectorStat->pcDataBuff+1u) = b&0xf;
.line 54
LDW .D1T1 *+A10(20),A0 ; |195|
LDW .D1T1 *+A10(28),A3 ; |195|
AND .S2 15,B7,B4 ; |195|
NOP 3
STB .D1T2 B4,*+A3[A0] ; |195|
.line 55
LDW .D1T1 *+A10(20),A0 ; |196|
LDW .D1T1 *+A10(28),A3 ; |196|
NOP 4
AND .S1 15,A4,A0 ; |196|
|| ADD .D1 A0,A3,A3 ; |196|
STB .D1T1 A0,*+A3(1) ; |196|
;** --------------------------------------------------------------------------*
L4:
;** -----------------------g7:
;** 207 ----------------------- uiNibble ^= 1u;
;** 207 ----------------------- ++p;
;** 207 ----------------------- if ( --L$1 ) goto g3;
.line 66
SUB .D1 A11,1,A1 ; |207|
[ A1] B .S1 L1 ; |207|
SUB .D1 A11,1,A11 ; |207|
ADD .S1 1,A12,A12 ; |207|
XOR .S2 1,B10,B10 ; |207|
NOP 2
; BRANCH OCCURS ; |207|
;** --------------------------------------------------------------------------*
L5:
;** -----------------------g8:
;** 209 ----------------------- pDetectorStat->nibble = uiNibble;
;** 209 ----------------------- return;
.line 68
STW .D1T2 B10,*+A10(32) ; |209|
.line 69
LDW .D2T2 *+SP(44),B3 ; |210|
MV .S1X SP,A9 ; |210|
LDW .D1T1 *+A9(40),A14 ; |210|
NOP 1
LDDW .D1T1 *+A9(32),A13:A12 ; |210|
RET .S2 B3 ; |210|
|| LDDW .D2T2 *+SP(48),B11:B10 ; |210|
LDW .D2T2 *++SP(56),B12 ; |210|
|| LDDW .D1T1 *+A9(24),A11:A10 ; |210|
NOP 4
; BRANCH OCCURS ; |210|
.endfunc 210,01c087c00h,56
.sect ".text"
.sym _ZFDetector,_ZFDetector, 32, 3, 0
.func 364
;******************************************************************************
;* FUNCTION NAME: _ZFDetector *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14, *
;* A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12, *
;* B13,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14, *
;* A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12, *
;* B13,SP *
;* Local Frame Size : 0 Args + 40 Auto + 44 Save = 84 byte *
;******************************************************************************
;******************************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key optimizations! *
;* *
;******************************************************************************
_ZFDetector:
;** --------------------------------------------------------------------------*
.line 2
.sym _pDetectorStat,4, 24, 17, 32, $$fake0
.sym C$2,4, 14, 4, 32
.sym C$3,18, 6, 4, 32
.sym C$4,0, 6, 4, 32
.sym C$5,24, 6, 4, 32
.sym C$6,5, 6, 4, 32
.sym C$7,17, 6, 4, 32
.sym C$8,6, 6, 4, 32
.sym C$9,23, 6, 4, 32
.sym C$10,3, 6, 4, 32
.sym C$11,22, 6, 4, 32
.sym C$12,20, 6, 4, 32
.sym C$13,21, 6, 4, 32
.sym C$14,19, 6, 4, 32
.sym C$15,2, 14, 4, 32
.sym C$16,0, 24, 4, 32, $$fake1
.sym C$17,0, 24, 4, 32, $$fake1
.sym C$18,40, 6, 1, 32
.sym C$19,11, 6, 4, 32
.sym C$20,29, 6, 4, 32
.sym C$21,10, 6, 4, 32
.sym C$22,26, 6, 4, 32
.sym C$23,14, 6, 4, 32
.sym C$24,27, 6, 4, 32
.sym C$25,15, 6, 4, 32
.sym C$26,13, 6, 4, 32
.sym C$27,28, 6, 4, 32
.sym C$28,0, 214, 4, 32,, 2
.sym C$29,20, 22, 4, 32
.sym _fTemp_4,21, 6, 4, 32
.sym _fTemp_3,7, 6, 4, 32
.sym _fTemp_2,1, 6, 4, 32
.sym _pr2_data_Q,10, 22, 4, 32
.sym _pr2_data_I,8, 22, 4, 32
.sym _pr1_data_Q,9, 22, 4, 32
.sym _pr1_data_I,11, 22, 4, 32
.sym _p,12, 4, 4, 32
.sym _xy,12, 6, 4, 32
.sym _pDetectorStat,36, 24, 1, 32, $$fake0
.sym L$1,2, 4, 4, 32
.sym U$100,10, 22, 4, 32
.sym U$98,8, 22, 4, 32
.sym U$95,9, 22, 4, 32
.sym U$93,11, 22, 4, 32
.sym U$109,14, 14, 4, 32
.sym U$112,25, 14, 4, 32
.sym U$103,0, 4, 4, 32
.sym _pG_ZF_r,4, 246, 1, 128,, 2, 2
.sym _pG_ZF_i,20, 246, 1, 128,, 2, 2
;** 411 ----------------------- C$28 = &pH_hat_i;
;** 411 ----------------------- C$23 = C$28[2];
;** 411 ----------------------- C$29 = &pH_hat_r[0];
;** 411 ----------------------- C$24 = C$29[1];
;** 411 ----------------------- C$25 = C$28[1];
;** 411 ----------------------- C$22 = *((float (*)[2])C$29+8);
;** 411 ----------------------- C$18 = *(float *)C$28;
;** 411 ----------------------- C$27 = *((float (*)[2])C$29+12);
;** 411 ----------------------- C$26 = C$28[3];
;** 411 ----------------------- C$20 = pH_hat_r[0];
;** 411 ----------------------- C$21 = C$20*C$26+C$27*C$18-C$22*C$25-C$24*C$23;
;** 411 ----------------------- C$19 = C$20*C$27-C$18*C$26-C$24*C$22+C$25*C$23;
;** 411 ----------------------- xy = C$19*C$19+C$21*C$21;
;** 415 ----------------------- pG_ZF_r[0] = (C$27*C$19+C$26*C$21)/xy;
;** 416 ----------------------- pG_ZF_i[0] = (C$26*C$19-C$27*C$21)/xy;
;** 417 ----------------------- pG_ZF_r[1] = (-C$24*C$19-C$25*C$21)/xy;
;** 418 ----------------------- pG_ZF_i[1] = (C$24*C$21-C$25*C$19)/xy;
;** 419 ----------------------- pG_ZF_r[2] = (-C$22*C$19-C$23*C$21)/xy;
;** 420 ----------------------- pG_ZF_i[2] = (C$22*C$21-C$23*C$19)/xy;
;** 421 ----------------------- pG_ZF_r[3] = (C$20*C$19+C$18*C$21)/xy;
;** 422 ----------------------- pG_ZF_i[3] = (C$18*C$19-C$20*C$21)/xy;
;** 439 ----------------------- C$17 = pDetectorStat->pfCplxSymbBuff_1;
;** 439 ----------------------- pr1_data_I = U$93 = C$17->pIBuffer;
;** 440 ----------------------- pr1_data_Q = U$95 = C$17->pQBuffer;
;** 441 ----------------------- C$16 = pDetectorStat->pfCplxSymbBuff_2;
;** 441 ----------------------- pr2_data_I = U$98 = C$16->pIBuffer;
;** 442 ----------------------- pr2_data_Q = U$100 = C$16->pQBuffer;
;** 444 ----------------------- U$103 = C$15 = pDetectorStat->uiNoOfSymb;
;** 444 ----------------------- if ( (int)C$15 <= 0 ) goto g4;
STW .D2T1 A15,*SP--(88) ; |365|
|| MV .S1X SP,A9 ; |365|
STW .D2T2 B13,*+SP(84)
STW .D2T2 B12,*+SP(80)
STW .D2T2 B11,*+SP(76)
STW .D2T2 B10,*+SP(72)
|| STW .D1T1 A13,*-A9(28)
STW .D2T2 B3,*+SP(68)
|| STW .D1T1 A12,*-A9(32)
STW .D2T1 A11,*+SP(52)
STW .D2T1 A10,*+SP(48)
STW .D1T1 A14,*-A9(24)
STW .D2T1 A4,*+SP(36) ; |365|
.line 48
MVKL .S1 _pH_hat_i,A0 ; |411|
MVKH .S1 _pH_hat_i,A0 ; |411|
LDW .D1T1 *A0,A3 ; |411|
|| MVKL .S2 _pH_hat_r,B5 ; |411|
MVKL .S2 _pH_hat_r,B4 ; |411|
MVKH .S2 _pH_hat_r,B5 ; |411|
LDW .D2T2 *B5,B13 ; |411|
|| MVKH .S2 _pH_hat_r,B4 ; |411|
LDW .D2T2 *+B4(12),B12 ; |411|
|| LDW .D1T1 *+A0(12),A13 ; |411|
STW .D2T1 A3,*+SP(40) ; |411|
LDW .D2T1 *+SP(40),A4 ; |411|
LDW .D2T2 *+B4(4),B11 ; |411|
LDW .D2T2 *+B4(8),B10 ; |411|
MPYSP .M2 B12,B13,B6 ; |411|
MPYSP .M1 A13,A3,A3 ; |411|
|| MPYSP .M2X A13,B13,B4 ; |411|
|| LDW .D1T1 *+A0(4),A15 ; |411|
MPYSP .M2X A4,B12,B5 ; |411|
LDW .D1T1 *+A0(8),A14 ; |411|
NOP 1
MPYSP .M2 B10,B11,B6 ; |411|
|| SUBSP .L1X B6,A3,A0 ; |411|
MPYSP .M2X A15,B10,B5 ; |411|
|| ADDSP .L2 B5,B4,B4 ; |411|
NOP 2
MPYSP .M1 A14,A15,A4 ; |411|
|| SUBSP .L1X A0,B6,A3 ; |411|
SUBSP .L2 B4,B5,B4 ; |411|
|| MPYSP .M1X A14,B11,A0 ; |411|
NOP 2
ADDSP .L1 A4,A3,A11 ; |411|
SUBSP .L1X B4,A0,A10 ; |411|
NOP 2
MPYSP .M1 A11,A11,A3 ; |411|
MPYSP .M1 A10,A10,A0 ; |411|
NOP 3
ADDSP .L1 A0,A3,A12 ; |411|
.line 52
MPYSP .M1 A10,A13,A0 ; |415|
|| MPYSP .M2X A11,B12,B4 ; |415|
|| MVKL .S2 __divf,B5 ; |415|
MVKH .S2 __divf,B5 ; |415|
CALL .S2 B5 ; |415|
MVKL .S2 RL4,B3 ; |415|
ADDSP .L1X A0,B4,A4 ; |415|
MV .L2X A12,B4 ; |415|
MVKH .S2 RL4,B3 ; |415|
NOP 1
RL4: ; CALL OCCURS ; |415|
STW .D2T1 A4,*+SP(4) ; |415|
.line 53
MPYSP .M1 A11,A13,A0 ; |416|
|| MPYSP .M2X A10,B12,B4 ; |416|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -