📄 usb_req.asm
字号:
.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) ; |156|
.line 5
MOV #1, T1
AMOV #_gen_purpose_buffer, XAR1 ; |159|
MOV #2, T0
MOV dbl(*SP(#4)), XAR0
CALL #_vUSB_postTransaction ; |159|
; call occurs [#_vUSB_postTransaction] ; |159|
.line 7
MOV #3, T0
.line 8
AADD #9, SP ; |161|
RET ; |161|
; return occurs ; |161|
.endfunc 162,000000000h,9
.sect ".text"
.align 4
.global _USB_reqVendorSetInt
.sym _USB_reqVendorSetInt,_USB_reqVendorSetInt, 42, 2, 0, $$fake5
.func 165
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorSetInt *
;* *
;* Function Uses Regs : 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_reqVendorSetInt:
.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) ; |166|
.line 9
MOV #2, T0
.line 10
AADD #9, SP ; |173|
RET ; |173|
; return occurs ; |173|
.endfunc 174,000000000h,9
.sect ".text"
.align 4
.global _USB_reqVendorDeviceStart
.sym _USB_reqVendorDeviceStart,_USB_reqVendorDeviceStart, 42, 2, 0, $$fake5
.func 179
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceStart *
;* *
;* Function Uses Regs : T0,AR0,XAR0,AR1,XAR1,AR2,XAR2,AR3,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_reqVendorDeviceStart:
.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) ; |180|
.line 3
MOV #0, *(#_indexUSB) ; |181|
.line 6
MOV #13313, AR3 ; |184|
MOV port(*AR3), AR1 ; |184|
AND #0x00bf, AR1, AR1 ; |184|
MOV AR1, port(*AR3) ; |184|
.line 8
MOV #3, T0
CALL #_IRQ_enable ; |186|
; call occurs [#_IRQ_enable] ; |186|
.line 9
MOV #1, *(#_bCollectingIsOn) ; |187|
.line 11
MOV #13313, AR3 ; |189|
MOV port(*AR3), AR1 ; |189|
OR #0x0042, AR1, AR1 ; |189|
MOV AR1, port(*AR3) ; |189|
.line 13
MOV #2, T0
.line 14
AADD #9, SP ; |191|
RET ; |191|
; return occurs ; |191|
.endfunc 192,000000000h,9
.sect ".text"
.align 4
.global _USB_reqVendorDeviceStop
.sym _USB_reqVendorDeviceStop,_USB_reqVendorDeviceStop, 42, 2, 0, $$fake5
.func 197
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceStop *
;* *
;* Function Uses Regs : T0,AR0,XAR0,AR1,XAR1,AR2,XAR2,AR3,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_reqVendorDeviceStop:
.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) ; |198|
.line 3
MOV #3, T0
CALL #_IRQ_disable ; |199|
; call occurs [#_IRQ_disable] ; |199|
.line 4
MOV #0, *(#_bCollectingIsOn) ; |200|
.line 6
MOV #13313, AR3 ; |202|
MOV port(*AR3), AR1 ; |202|
AND #0x00bd, AR1, AR1 ; |202|
MOV AR1, port(*AR3) ; |202|
.line 8
MOV #2, T0
.line 9
AADD #9, SP ; |204|
RET ; |204|
; return occurs ; |204|
.endfunc 205,000000000h,9
.sect ".text"
.align 4
.global _USB_reqVendorDeviceClear
.sym _USB_reqVendorDeviceClear,_USB_reqVendorDeviceClear, 42, 2, 0, $$fake5
.func 209
;*******************************************************************************
;* FUNCTION NAME: _USB_reqVendorDeviceClear *
;* *
;* Function Uses Regs : AC0,AC0,AC1,AC1,T0,AR0,XAR0,AR1,XAR1,AR2,XAR2,AR3, *
;* XAR3,SP,CARRY,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_reqVendorDeviceClear:
.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) ; |210|
.line 3
MOV #0, AC0 ; |211|
MOV AC0, dbl(*(#_i32)) ; |211|
MOV dbl(*(#_i32)), AC1 ; |211|
MOV #16384, AC0 ; |211|
CMPU AC1 >= AC0, TC1 ; |211|
BCC L2,TC1 ; |211|
; branch occurs ; |211|
L1:
.line 5
MOV *(#(_i32+1)), T0 ; |213|
SFTL T0, #1 ; |213|
MOV #0, AC0 ; |213|
AMOV #_mcaData, XAR3 ; |213|
MOV AC0, dbl(*AR3(T0)) ; |213|
.line 6
MOV dbl(*(#_i32)), AC0 ; |214|
ADD #1, AC0 ; |214|
MOV AC0, dbl(*(#_i32)) ; |214|
MOV dbl(*(#_i32)), AC1 ; |214|
MOV #16384, AC0 ; |214|
CMPU AC1 < AC0, TC1 ; |214|
BCC L1,TC1 ; |214|
; branch occurs ; |214|
L2:
.line 8
MOV #0, AC0 ; |216|
MOV AC0, dbl(*(#_i32)) ; |216|
MOV dbl(*(#_i32)), AC1 ; |216|
MOV #512, AC0 ; |216|
CMPU AC1 >= AC0, TC1 ; |216|
BCC L4,TC1 ; |216|
; branch occurs ; |216|
L3:
.line 10
MOV *(#(_i32+1)), T0 ; |218|
SFTL T0, #1 ; |218|
MOV #0, AC0 ; |218|
AMOV #_mcaData512, XAR3 ; |218|
MOV AC0, dbl(*AR3(T0)) ; |218|
.line 11
MOV dbl(*(#_i32)), AC0 ; |219|
ADD #1, AC0 ; |219|
MOV AC0, dbl(*(#_i32)) ; |219|
MOV dbl(*(#_i32)), AC1 ; |219|
MOV #512, AC0 ; |219|
CMPU AC1 < AC0, TC1 ; |219|
BCC L3,TC1 ; |219|
; branch occurs ; |219|
L4:
.line 13
MOV #0, AC0 ; |221|
MOV AC0, dbl(*(#_i32)) ; |221|
MOV dbl(*(#_i32)), AC1 ; |221|
MOV #1024, AC0 ; |221|
CMPU AC1 >= AC0, TC1 ; |221|
BCC L6,TC1 ; |221|
; branch occurs ; |221|
L5:
.line 15
MOV *(#(_i32+1)), T0 ; |223|
SFTL T0, #1 ; |223|
MOV #0, AC0 ; |223|
AMOV #_mcaData1024, XAR3 ; |223|
MOV AC0, dbl(*AR3(T0)) ; |223|
.line 17
MOV dbl(*(#_i32)), AC0 ; |225|
ADD #1, AC0 ; |225|
MOV AC0, dbl(*(#_i32)) ; |225|
MOV dbl(*(#_i32)), AC1 ; |225|
MOV #1024, AC0 ; |225|
CMPU AC1 < AC0, TC1 ; |225|
BCC L5,TC1 ; |225|
; branch occurs ; |225|
L6:
.line 19
MOV #0, AC0 ; |227|
MOV AC0, dbl(*(#_i32)) ; |227|
MOV dbl(*(#_i32)), AC1 ; |227|
MOV #2048, AC0 ; |227|
CMPU AC1 >= AC0, TC1 ; |227|
BCC L8,TC1 ; |227|
; branch occurs ; |227|
L7:
.line 21
MOV *(#(_i32+1)), T0 ; |229|
SFTL T0, #1 ; |229|
MOV #0, AC0 ; |229|
AMOV #_mcaData2048, XAR3 ; |229|
MOV AC0, dbl(*AR3(T0)) ; |229|
.line 22
MOV dbl(*(#_i32)), AC0 ; |230|
ADD #1, AC0 ; |230|
MOV AC0, dbl(*(#_i32)) ; |230|
MOV dbl(*(#_i32)), AC1 ; |230|
MOV #2048, AC0 ; |230|
CMPU AC1 < AC0, TC1 ; |230|
BCC L7,TC1 ; |230|
; branch occurs ; |230|
L8:
.line 24
MOV #0, AC0 ; |232|
MOV #15, AC1 ; |232|
MOV AC0, dbl(*(#_i32)) ; |232|
MOV dbl(*(#_i32)), AC0 ; |232|
CMPU AC0 >= AC1, TC1 ; |232|
BCC L10,TC1 ; |232|
; branch occurs ; |232|
L9:
.line 26
MOV *(#(_i32+1)), T0 ; |234|
SFTL T0, #1 ; |234|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -