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

📄 usb_req.asm

📁 使用5509A的usb的程序代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        MOV #-1 << #16, AC0 ; |234| 
        AMOV #_mcaDataCRC, XAR3 ; |234| 
        OR #0xffff, AC0, AC0 ; |234| 
        MOV AC0, dbl(*AR3(T0)) ; |234| 
	.line	27
        MOV dbl(*(#_i32)), AC0 ; |235| 
        ADD #1, AC0 ; |235| 
        MOV AC0, dbl(*(#_i32)) ; |235| 
        MOV dbl(*(#_i32)), AC0 ; |235| 
        CMPU AC0 < AC1, TC1 ; |235| 
        BCC L9,TC1 ; |235| 
                                        ; branch occurs	; |235| 
L10:    
	.line	28
        MOV #0, AC0 ; |236| 
        MOV AC0, dbl(*(#(_mcaDataCRC+30))) ; |236| 
	.line	30
        MOV AC0, dbl(*(#_nRecordTime)) ; |238| 
	.line	31
        MOV AC0, dbl(*(#_nRecordCorrect)) ; |239| 
	.line	32
        MOV AC0, dbl(*(#_nRecordOverFlow)) ; |240| 
	.line	33
        MOV AC0, dbl(*(#_nRecordMissed)) ; |241| 
	.line	34
        MOV AC0, dbl(*(#_nRecordDMA0Miss)) ; |242| 
	.line	35
        MOV AC0, dbl(*(#_nRecordDMA1Miss)) ; |243| 
	.line	36
        MOV AC0, dbl(*(#_nRecordDMA2Miss)) ; |244| 
	.line	38
        MOV #2, T0
	.line	39
        AADD #9, SP ; |246| 
        RET       ; |246| 
                                        ; return occurs	; |246| 
	.endfunc	247,000000000h,9



	.sect	".text"
	.align 4
	.global	_USB_reqVendorDeviceGetTime
	.sym	_USB_reqVendorDeviceGetTime,_USB_reqVendorDeviceGetTime, 42, 2, 0, $$fake5
	.func	252
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceGetTime                                  *
;*                                                                             *
;*   Function Uses Regs : AC0,AC0,AC1,AC1,T0,T1,AR0,XAR0,AR1,XAR1,AR2,XAR2,SP, *
;*                        M40,SATA,SATD,RDM,FRCT,SMUL                          *
;*   Stack Frame        : Compact (No Frame Pointer, w/ debug)                 *
;*   Total Frame Size   : 10 words                                             *
;*                        (2 return address/alignment)                         *
;*                        (8 local values)                                     *
;*******************************************************************************
_USB_reqVendorDeviceGetTime:
	.line	2
;* T0    assigned to _DevNum
	.sym	_DevNum,12, 10, 17, 16, $$fake0
;* AR0   assigned to _USB_Setup
	.sym	_USB_Setup,17, 24, 17, 23, $$fake6
;* AR1   assigned to _hInEp
	.sym	_hInEp,19, 24, 17, 23, $$fake2
;* AR2   assigned to _hOutEp
	.sym	_hOutEp,21, 24, 17, 23, $$fake2
	.sym	_DevNum,0, 10, 1, 16, $$fake0
	.sym	_USB_Setup,2, 24, 1, 23, $$fake6
	.sym	_hInEp,4, 24, 1, 23, $$fake2
	.sym	_hOutEp,6, 24, 1, 23, $$fake2
        AADD #-9, SP
        MOV XAR2, dbl(*SP(#6))
        MOV XAR1, dbl(*SP(#4))
        MOV XAR0, dbl(*SP(#2))
        MOV T0, *SP(#0) ; |253| 
	.line	4
        MOV dbl(*(#_nRecordTime)), AC0 ; |255| 
        AND #0xffff, AC0, AC0 ; |255| 
        MOV AC0, *(#(_gen_purpose_buffer+1)) ; |255| 
	.line	5
        MOV dbl(*(#_nRecordTime)), AC1 ; |256| 
        MOV #-1 << #16, AC0 ; |256| 
        AND AC1, AC0 ; |256| 
        MOV HI(AC0), *(#(_gen_purpose_buffer+2)) ; |256| 
	.line	7
        MOV #1, T1
        AMOV #_gen_purpose_buffer, XAR1 ; |258| 
        MOV #4, T0
        MOV dbl(*SP(#4)), XAR0
        CALL #_vUSB_postTransaction ; |258| 
                                        ; call occurs [#_vUSB_postTransaction]	; |258| 
	.line	9
        MOV #3, T0
	.line	10
        AADD #9, SP ; |260| 
        RET       ; |260| 
                                        ; return occurs	; |260| 
	.endfunc	261,000000000h,9



	.sect	".text"
	.align 4
	.global	_USB_reqVendorDeviceGetCount
	.sym	_USB_reqVendorDeviceGetCount,_USB_reqVendorDeviceGetCount, 42, 2, 0, $$fake5
	.func	267
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceGetCount                                 *
;*                                                                             *
;*   Function Uses Regs : AC0,AC0,AC1,AC1,T0,T1,AR0,XAR0,AR1,XAR1,AR2,XAR2,SP, *
;*                        M40,SATA,SATD,RDM,FRCT,SMUL                          *
;*   Stack Frame        : Compact (No Frame Pointer, w/ debug)                 *
;*   Total Frame Size   : 10 words                                             *
;*                        (2 return address/alignment)                         *
;*                        (8 local values)                                     *
;*******************************************************************************
_USB_reqVendorDeviceGetCount:
	.line	2
;* T0    assigned to _DevNum
	.sym	_DevNum,12, 10, 17, 16, $$fake0
;* AR0   assigned to _USB_Setup
	.sym	_USB_Setup,17, 24, 17, 23, $$fake6
;* AR1   assigned to _hInEp
	.sym	_hInEp,19, 24, 17, 23, $$fake2
;* AR2   assigned to _hOutEp
	.sym	_hOutEp,21, 24, 17, 23, $$fake2
	.sym	_DevNum,0, 10, 1, 16, $$fake0
	.sym	_USB_Setup,2, 24, 1, 23, $$fake6
	.sym	_hInEp,4, 24, 1, 23, $$fake2
	.sym	_hOutEp,6, 24, 1, 23, $$fake2
        AADD #-9, SP
        MOV XAR2, dbl(*SP(#6))
        MOV XAR1, dbl(*SP(#4))
        MOV XAR0, dbl(*SP(#2))
        MOV T0, *SP(#0) ; |268| 
	.line	3
        MOV dbl(*(#_nRecordCorrect)), AC0 ; |269| 
        AND #0xffff, AC0, AC0 ; |269| 
        MOV AC0, *(#(_gen_purpose_buffer+1)) ; |269| 
	.line	4
        MOV dbl(*(#_nRecordCorrect)), AC1 ; |270| 
        MOV #-1 << #16, AC0 ; |270| 
        AND AC1, AC0 ; |270| 
        MOV HI(AC0), *(#(_gen_purpose_buffer+2)) ; |270| 
	.line	5
        MOV dbl(*(#_nRecordOverFlow)), AC0 ; |271| 
        AND #0xffff, AC0, AC0 ; |271| 
        MOV AC0, *(#(_gen_purpose_buffer+3)) ; |271| 
	.line	6
        MOV dbl(*(#_nRecordOverFlow)), AC1 ; |272| 
        MOV #-1 << #16, AC0 ; |272| 
        AND AC1, AC0 ; |272| 
        MOV HI(AC0), *(#(_gen_purpose_buffer+4)) ; |272| 
	.line	7
        MOV dbl(*(#_nRecordMissed)), AC0 ; |273| 
        AND #0xffff, AC0, AC0 ; |273| 
        MOV AC0, *(#(_gen_purpose_buffer+5)) ; |273| 
	.line	8
        MOV dbl(*(#_nRecordMissed)), AC1 ; |274| 
        MOV #-1 << #16, AC0 ; |274| 
        AND AC1, AC0 ; |274| 
        MOV HI(AC0), *(#(_gen_purpose_buffer+6)) ; |274| 
	.line	14
        MOV #1, T1
        AMOV #_gen_purpose_buffer, XAR1 ; |280| 
        MOV #12, T0
        MOV dbl(*SP(#4)), XAR0
        CALL #_vUSB_postTransaction ; |280| 
                                        ; call occurs [#_vUSB_postTransaction]	; |280| 
	.line	17
        MOV #3, T0
	.line	18
        AADD #9, SP ; |283| 
        RET       ; |283| 
                                        ; return occurs	; |283| 
	.endfunc	284,000000000h,9



	.sect	".text"
	.align 4
	.global	_USB_reqVendorDeviceSetChannel
	.sym	_USB_reqVendorDeviceSetChannel,_USB_reqVendorDeviceSetChannel, 42, 2, 0, $$fake5
	.func	289
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceSetChannel                               *
;*                                                                             *
;*   Function Uses Regs : T0,AR0,XAR0,AR1,XAR1,AR2,XAR2,AR3,XAR3,SP,TC1,M40,   *
;*                        SATA,SATD,RDM,FRCT,SMUL                              *
;*   Stack Frame        : Compact (No Frame Pointer, w/ debug)                 *
;*   Total Frame Size   : 10 words                                             *
;*                        (2 return address/alignment)                         *
;*                        (8 local values)                                     *
;*******************************************************************************
_USB_reqVendorDeviceSetChannel:
	.line	2
;* T0    assigned to _DevNum
	.sym	_DevNum,12, 10, 17, 16, $$fake0
;* AR0   assigned to _USB_Setup
	.sym	_USB_Setup,17, 24, 17, 23, $$fake6
;* AR1   assigned to _hInEp
	.sym	_hInEp,19, 24, 17, 23, $$fake2
;* AR2   assigned to _hOutEp
	.sym	_hOutEp,21, 24, 17, 23, $$fake2
	.sym	_DevNum,0, 10, 1, 16, $$fake0
	.sym	_USB_Setup,2, 24, 1, 23, $$fake6
	.sym	_hInEp,4, 24, 1, 23, $$fake2
	.sym	_hOutEp,6, 24, 1, 23, $$fake2
        AADD #-9, SP
        MOV XAR2, dbl(*SP(#6))
        MOV XAR1, dbl(*SP(#4))
        MOV XAR0, dbl(*SP(#2))
        MOV T0, *SP(#0) ; |290| 
	.line	3
        MOV dbl(*SP(#2)), XAR3
        MOV *AR3(short(#3)), AR1 ; |291| 
        MOV AR1, *(#_gen_purpose_buffer) ; |291| 
	.line	4
        CMP *(#_gen_purpose_buffer) == #512, TC1 ; |292| 
        MOV #0, AR2
        BCC L11,!TC1 ; |292| 
                                        ; branch occurs	; |292| 
        MOV #1, AR2
L11:    
        CMP *(#_gen_purpose_buffer) == #1024, TC1 ; |292| 
        MOV #0, AR1
        BCC L12,!TC1 ; |292| 
                                        ; branch occurs	; |292| 
        MOV #1, AR1
L12:    
        CMP *(#_gen_purpose_buffer) == #2048, TC1 ; |292| 

        MOV #0, AR2
||      OR AR2, AR1 ; |292| 

        BCC L13,!TC1 ; |292| 
                                        ; branch occurs	; |292| 
        MOV #1, AR2
L13:    
        CMP *(#_gen_purpose_buffer) == #8192, TC1 ; |292| 

        MOV #0, AR2
||      OR AR2, AR1 ; |292| 

        BCC L14,!TC1 ; |292| 
                                        ; branch occurs	; |292| 
        MOV #1, AR2
L14:    
        OR AR2, AR1 ; |292| 
        BCC L15,AR1 == #0 ; |292| 
                                        ; branch occurs	; |292| 
	.line	9
        MOV *(#_gen_purpose_buffer), AR1 ; |297| 
        MOV AR1, *(#_mcaTranLength) ; |297| 
L15:    
	.line	11
        MOV #2, T0
	.line	12
        AADD #9, SP ; |299| 
        RET       ; |299| 
                                        ; return occurs	; |299| 
	.endfunc	300,000000000h,9



	.sect	".text"
	.align 4
	.global	_USB_reqVendorDeviceGetChannel
	.sym	_USB_reqVendorDeviceGetChannel,_USB_reqVendorDeviceGetChannel, 42, 2, 0, $$fake5
	.func	305
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceGetChannel                               *
;*                                                                             *
;*   Function Uses Regs : T0,T1,AR0,XAR0,AR1,XAR1,AR2,XAR2,SP,M40,SATA,SATD,   *
;*                        RDM,FRCT,SMUL                                        *
;*   Stack Frame        : Compact (No Frame Pointer, w/ debug)                 *
;*   Total Frame Size   : 10 words                                             *
;*                        (2 return address/alignment)                         *
;*                        (8 local values)                                     *
;*******************************************************************************
_USB_reqVendorDeviceGetChannel:
	.line	2
;* T0    assigned to _DevNum
	.sym	_DevNum,12, 10, 17, 16, $$fake0
;* AR0   assigned to _USB_Setup
	.sym	_USB_Setup,17, 24, 17, 23, $$fake6
;* AR1   assigned to _hInEp
	.sym	_hInEp,19, 24, 17, 23, $$fake2
;* AR2   assigned to _hOutEp
	.sym	_hOutEp,21, 24, 17, 23, $$fake2
	.sym	_DevNum,0, 10, 1, 16, $$fake0
	.sym	_USB_Setup,2, 24, 1, 23, $$fake6
	.sym	_hInEp,4, 24, 1, 23, $$fake2
	.sym	_hOutEp,6, 24, 1, 23, $$fake2
        AADD #-9, SP
        MOV XAR2, dbl(*SP(#6))
        MOV XAR1, dbl(*SP(#4))
        MOV XAR0, dbl(*SP(#2))
        MOV T0, *SP(#0) ; |306| 
	.line	3
        MOV *(#_mcaTranLength), AR1 ; |307| 
        MOV AR1, *(#(_gen_purpose_buffer+1)) ; |307| 
	.line	5
        MOV #1, T1
        MOV #2, T0
        AMOV #_gen_purpose_buffer, XAR1 ; |309| 
        MOV dbl(*SP(#4)), XAR0
        CALL #_vUSB_postTransaction ; |309| 
                                        ; call occurs [#_vUSB_postTransaction]	; |309| 
	.line	7
        MOV #3, T0
	.line	8
        AADD #9, SP ; |311| 
        RET       ; |311| 
                                        ; return occurs	; |311| 
	.endfunc	312,000000000h,9



	.sect	".text"
	.align 4
	.global	_USB_reqVendorDeviceStartRead
	.sym	_USB_reqVendorDeviceStartRead,_USB_reqVendorDeviceStartRead, 42, 2, 0, $$fake5
	.func	316
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceStartRead                                *
;*                                                                             *
;*   Function Uses Regs : AC0,AC0,T0,AR0,XAR0,AR1,XAR1,AR2,XAR2,SP,M40,SATA,   *
;*                        SATD,RDM,FRCT,SMUL                                   *
;*   Stack Frame        : Compact (No Frame Pointer, w/ debug)                 *
;*   Total Frame Size   : 10 words                                             *
;*                        (2 return address/alignment)                         *
;*                        (8 local values)                                     *
;*******************************************************************************
_USB_reqVendorDeviceStartRead:
	.line	2
;* T0    assigned to _DevNum
	.sym	_DevNum,12, 10, 17, 16, $$fake0
;* AR0   assigned to _USB_Setup
	.sym	_USB_Setup,17, 24, 17, 23, $$fake6
;* AR1   assigned to _hInEp

⌨️ 快捷键说明

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