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

📄 main.asm

📁 语音信号加密
💻 ASM
📖 第 1 页 / 共 3 页
字号:
        @REA1_L = pop()
||      mmap()

        @RSA1_H = pop()
||      mmap()

        @RSA1_L = pop()
||      mmap()

        @BRC1_L = pop()
||      mmap()

        @BRS1_L = pop()
||      mmap()

        @REA0_H = pop()
||      mmap()

        @REA0_L = pop()
||      mmap()

        @RSA0_H = pop()
||      mmap()

        @RSA0_L = pop()
||      mmap()

        @BRC0_L = pop()
||      mmap()

        @ST3_L = pop()
||      mmap()

        AR7,AR6 = pop()
        AR5,AR4 = pop()
        AR3,AR2 = pop()
        AR1,AR0 = pop()
        T3,T2 = pop()
        T1,T0 = pop()

        @AC3_G = pop()
||      mmap()

        AC3 = dbl(pop())

        @AC2_G = pop()
||      mmap()

        AC2 = dbl(pop())

        @AC1_G = pop()
||      mmap()

        AC1 = dbl(pop())

        @AC0_G = pop()
||      mmap()

        AC0 = dbl(pop())
        return_int
                                        ; return occurs
	.endfunc	237,00000007fh,45


	.sect	".text"
	.global	_taskFxn
	.sym	_taskFxn,_taskFxn, 32, 2, 0
	.func	195
;******************************************************************************
;* FUNCTION NAME: _taskFxn                                                    *
;*                                                                            *
;*   Function Uses Regs : AC0,T0,AR1,AR2,AR3,CARRY,TC1,M40                    *
;*   Stack Frame        : Compact (No Frame Pointer, w/ debug)                *
;*   Total Frame Size   : 1 word                                              *
;*                        (1 return address/alignment)                        *
;******************************************************************************
_taskFxn:
	.line	2
;* AR3   assigned to U$7
;* AR1   assigned to _Val
	.sym	_Val,18, 14, 4, 16
;* AR2   assigned to __MCBSP
	.sym	__MCBSP,20, 24, 4, 16, $$fake0
        AR3 = *abs16(#_mhMcbsp)
        AC0 = uns(*AR3)
        AC0 = AC0 <<< #10
        AR3 = AC0 + #10244
L3:    
	.line	8

        TC1 = bit(*AR3,#1) ; |202| 
||      readport()

        if (!TC1) goto L3 ; |202| 
                                        ; branch occurs	; |202| 
	.line	10
        T0 = #(_rcv & 0xffff) ; |204| 
        AR3 = *abs16(#_XfrCnt) ; |204| 
        AR2 = *abs16(#_mhMcbsp)
        AR1 = *AR3(T0)
        AR3 = *AR2(short(#3))

        *AR3 = AR1 ; |1385| 
||      writeport()

	.line	30
        return
                                        ; return occurs
	.endfunc	224,000000000h,0


	.sect	".text"
	.global	_readIsr
	.sym	_readIsr,_readIsr, 32, 2, 0
	.func	239
;******************************************************************************
;* INTERRUPT NAME: _readIsr                                                   *
;*                                                                            *
;*   Function Uses Regs : AC0,T0,T1,T2,T3,AR1,AR3,AR5,CARRY,TC1,M40,SATA,SATD,*
;*                        FRCT,SMUL                                           *
;*   Save On Entry Regs : AC0,AC0_H,AC0_G,AC1,AC1_H,AC1_G,AC2,AC2_H,AC2_G,AC3,*
;*                        AC3_H,AC3_G,T0,T1,T2,T3,AR0,AR1,AR2,AR3,AR4,AR5,AR6,*
;*                        AR7,ST3,BRC0,RSA0,RSA0_H,REA0,REA0_H,BRS1,BRC1,RSA1,*
;*                        RSA1_H,REA1,REA1_H,CSR,RPTC,CDP,TRN0,TRN1,BSA01,    *
;*                        BSA23,BSA45,BSA67,BSAC                              *
;******************************************************************************
_readIsr:
	.line	2
;* T0    assigned to _old_intm
	.sym	_old_intm,12, 4, 4, 16
;* T3    assigned to _mask
	.sym	_mask,15, 14, 4, 16
;* T3    assigned to _value
	.sym	_value,15, 14, 4, 16
;* AR1   assigned to _prev
	.sym	_prev,18, 14, 4, 16
;* AR5   assigned to _reg
	.sym	_reg,26, 14, 4, 16
;* T2    assigned to _EventId
	.sym	_EventId,14, 14, 4, 16
;* AR1   assigned to _val
	.sym	_val,18, 14, 4, 16
;* AR3   assigned to __MCBSP
	.sym	__MCBSP,22, 24, 4, 16, $$fake0
        dbl(push(AC0))

        push(@AC0_G)
||      mmap()

        dbl(push(AC1))

        push(@AC1_G)
||      mmap()

        dbl(push(AC2))

        push(@AC2_G)
||      mmap()

        dbl(push(AC3))

        push(@AC3_G)
||      mmap()

        push(T1,T0)
        push(T3,T2)
        push(AR1,AR0)
        push(AR3,AR2)
        push(AR5,AR4)
        push(AR7,AR6)

        push(@ST3_L)
||      mmap()

        push(@BRC0_L)
||      mmap()

        push(@RSA0_L)
||      mmap()

        push(@RSA0_H)
||      mmap()

        push(@REA0_L)
||      mmap()

        push(@REA0_H)
||      mmap()

        push(@BRS1_L)
||      mmap()

        push(@BRC1_L)
||      mmap()

        push(@RSA1_L)
||      mmap()

        push(@RSA1_H)
||      mmap()

        push(@REA1_L)
||      mmap()

        push(@REA1_H)
||      mmap()

        push(@CSR_L)
||      mmap()

        push(@RPTC_L)
||      mmap()

        push(@CDP_L)
||      mmap()

        push(@TRN0_L)
||      mmap()

        push(@TRN1_L)
||      mmap()

        push(@BSA01_L)
||      mmap()

        push(@BSA23_L)
||      mmap()

        push(@BSA45_L)
||      mmap()

        push(@BSA67_L)
||      mmap()

        push(@BSAC_L)
||      mmap()

        AR1 = SP

        @SP_L = @SP_L & #0xfffe
||      mmap()

        push(AR1)

        @ST2_L = @ST2_L & #0xfa00
||      mmap()

        @ST2_L = @ST2_L | #0x8000
||      mmap()

        @ST1_L = @ST1_L & #0xf91f
||      mmap()

        SP = SP + #-1

        @ST3_L = @ST3_L & #0xffdd
||      mmap()

        @ST1_L = @ST1_L | #0x4100
||      mmap()

	.line	3
        AR3 = *abs16(#_mhMcbsp)
        AR3 = *AR3(short(#1))

        AR1 = *AR3
||      readport()

        T0 = #(_rcv & 0xffff) ; |1373| 
        AR3 = *abs16(#_XfrCnt) ; |1373| 
        *AR3(T0) = AR1 ; |1373| 
	.line	4
        *abs16(#_XfrCnt) = *abs16(#_XfrCnt) + #1 ; |242| 
	.line	6
        TC1 = (*abs16(#_XfrCnt) == #256) ; |244| 
        if (TC1) goto L4 ; |244| 
                                        ; branch occurs	; |244| 
	.line	19
        T2 = *abs16(#_xmtEventId)
        AC0 = T2
        AR5 = field_extract(AC0, #0x0010) ; |202| 
        T1 = T2 & #0x000f ; |203| 
        AC0 = #1  ; |203| 
        AC0 = AC0 << T1 ; |203| 
        T3 = AC0  ; |203| 
        call #_IRQ_globalDisable ; |204| 
                                        ; call occurs [#_IRQ_globalDisable]	; |204| 
        TC1 = bit(T2,@#4) ; |205| 
        if (!TC1) execute (D_Unit) ||
            AR3 = #0 ; |205| 
        if (!TC1) execute (D_Unit) ||
            AR1 = *AR3
        if (TC1) execute (D_Unit) ||
            AR3 = #69 ; |205| 
        if (TC1) execute (D_Unit) ||
            AR1 = *AR3
        T3 = T3 | AR1 ; |207| 
        if (AR5 == #0) execute (D_Unit) ||
            AR3 = #0 ; |211| 
        if (AR5 == #0) execute (AD_Unit) ||
            *AR3 = T3 ; |211| 
        if (AR5 != #0) execute (D_Unit) ||
            AR3 = #69 ; |209| 
        if (AR5 != #0) execute (AD_Unit) ||
            *AR3 = T3 ; |209| 
        call #_IRQ_globalRestore ; |212| 
                                        ; call occurs [#_IRQ_globalRestore]	; |212| 
        goto L5   ; |257| 
                                        ; branch occurs	; |257| 
L4:    
	.line	13
        *abs16(#_XfrCnt) = #0 ; |251| 
L5:    
	.line	21
        SP = SP + #1

        @SP_L = pop()
||      mmap()

        @BSAC_L = pop()
||      mmap()

        @BSA67_L = pop()
||      mmap()

        @BSA45_L = pop()
||      mmap()

        @BSA23_L = pop()
||      mmap()

        @BSA01_L = pop()
||      mmap()

        @TRN1_L = pop()
||      mmap()

        @TRN0_L = pop()
||      mmap()

        @CDP_L = pop()
||      mmap()

        @RPTC_L = pop()
||      mmap()

        @CSR_L = pop()
||      mmap()

        @REA1_H = pop()
||      mmap()

        @REA1_L = pop()
||      mmap()

        @RSA1_H = pop()
||      mmap()

        @RSA1_L = pop()
||      mmap()

        @BRC1_L = pop()
||      mmap()

        @BRS1_L = pop()
||      mmap()

        @REA0_H = pop()
||      mmap()

        @REA0_L = pop()
||      mmap()

        @RSA0_H = pop()
||      mmap()

        @RSA0_L = pop()

⌨️ 快捷键说明

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