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

📄 d12ci.asm

📁 SPCE061A_USB可以让你自己检测开发板是否能正常动作
💻 ASM
📖 第 1 页 / 共 3 页
字号:
	pop bp from [sp]
	retf
	.endp	// end of F_D12_SetEndpointStatus

.debug
	.dw '.stabs "bEndp:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "bStalled:p4",160,0,0,5',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME5-_F_D12_SetEndpointStatus
	.dw 0x0d,0x0a
.code
LME5:
.code
.debug
	.dw '.stabs "F_D12_WriteEndpoint:F4",36,0,0,',0,0,offset _F_D12_WriteEndpoint,seg _F_D12_WriteEndpoint,0x0d,0x0a
.CODE
.public _F_D12_WriteEndpoint
_F_D12_WriteEndpoint:	.proc
.debug
	.dw '.stabn 0x44,0,75,',0,0
	.dd LM50-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM50:
	// total=2, vars=2
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=2
	bp=sp+1

	R1=BP+5
	[bp+1]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,76,',0,0
	.dd LM51-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM51:
LBB2:
.debug
	.dw '.stabn 0x44,0,77,',0,0
	.dd LM52-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM52:
	R1=[_bEPPflags]	// QImode move
	R2=4	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __rshu1	// call with return value
	SP=SP+2
	R2=R1&1
	CMP R2,0	// QImode test
	JZ L33	// QImode NE
	PC=L27
L33:
.debug
	.dw '.stabn 0x44,0,78,',0,0
	.dd LM53-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM53:
	call _F_Interrupt_Off	// call without return value
L27:
.debug
	.dw '.stabn 0x44,0,79,',0,0
	.dd LM54-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM54:
	call _F_InitWriteD12	// call without return value
.debug
	.dw '.stabn 0x44,0,80,',0,0
	.dd LM55-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM55:
	R2=[bp+1]	// QImode move
	R1=[R2]	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,81,',0,0
	.dd LM56-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM56:
	call _F_InitReadD12	// call without return value
.debug
	.dw '.stabn 0x44,0,82,',0,0
	.dd LM57-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM57:
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_ReadD12	// call with return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,83,',0,0
	.dd LM58-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM58:
	call _F_InitWriteD12	// call without return value
.debug
	.dw '.stabn 0x44,0,84,',0,0
	.dd LM59-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM59:
	R1=240	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,85,',0,0
	.dd LM60-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM60:
	R1=0	// QImode move
	[SP--]=R1	// QImode move
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,86,',0,0
	.dd LM61-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM61:
	R1=[bp+1]	// QImode move
	R3=[bp+1]	// QImode move
	R2=R3+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,87,',0,0
	.dd LM62-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM62:
	R1=0	// QImode move
	[BP]=R1	// QImode move
L28:
	R1=[bp+1]	// QImode move
	R1=[bp+1]	// QImode move
	R2=R1+1
	R1=[BP]	// QImode move
	R3=R2	// QImode move
	CMP R1,[R3]	// QImode compare
	JNB L34	// QImode LTU
	PC=L31
L34:
	pc=L29	// Indirect jump
L31:
.debug
	.dw '.stabn 0x44,0,89,',0,0
	.dd LM63-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM63:
	R1=[bp+1]	// QImode move
	R1=[bp+1]	// QImode move
	R3=R1+2
	R1=R3	// QImode move
	R2=[R1]	// QImode move
	R1=R2	// QImode move
	R1+=[BP]	// addqi3_r0R
	R3=R1	// QImode move
	R2=[R3]	// QImode move
	[SP--]=R2	// QImode move
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,87,',0,0
	.dd LM64-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM64:
L30:
	R1=[BP]	// QImode move
	R2=R1+1
	[BP]=R2	// QImode move
	pc=L28	// Indirect jump
L29:
.debug
	.dw '.stabn 0x44,0,91,',0,0
	.dd LM65-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM65:
	R1=250	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,92,',0,0
	.dd LM66-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM66:
	R1=[_bEPPflags]	// QImode move
	R2=4	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __rshu1	// call with return value
	SP=SP+2
	R2=R1&1
	CMP R2,0	// QImode test
	JZ L35	// QImode NE
	PC=L32
L35:
.debug
	.dw '.stabn 0x44,0,93,',0,0
	.dd LM67-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM67:
	call _F_Interrupt_On	// call without return value
L32:
.debug
	.dw '.stabn 0x44,0,94,',0,0
	.dd LM68-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM68:
	R1=[bp+1]	// QImode move
	R1=[bp+1]	// QImode move
	R2=R1+1
	R1=R2	// QImode move
	R3=[R1]	// QImode move
	R1=R3	// QImode move
	pc=L26	// Indirect jump
.debug
	.dw '.stabn 0x44,0,95,',0,0
	.dd LM69-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM69:
LBE2:
.debug
	.dw '.stabn 0x44,0,95,',0,0
	.dd LM70-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LM70:
L26:

	sp+=2
	pop bp from [sp]
	retf
	.endp	// end of F_D12_WriteEndpoint

.debug
	.dw '.stabs "endp:p4",160,0,0,5',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "len:p4",160,0,0,6',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "buf:p26",160,0,0,7',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB2-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "i:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE2-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME6-_F_D12_WriteEndpoint
	.dw 0x0d,0x0a
.code
LME6:
.code
.debug
	.dw '.stabs "F_D12_AcknowledgeEndpoint:F19",36,0,0,',0,0,offset _F_D12_AcknowledgeEndpoint,seg _F_D12_AcknowledgeEndpoint,0x0d,0x0a
.CODE
.public _F_D12_AcknowledgeEndpoint
_F_D12_AcknowledgeEndpoint:	.proc
.debug
	.dw '.stabn 0x44,0,97,',0,0
	.dd LM71-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM71:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,98,',0,0
	.dd LM72-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM72:
	call _F_InitWriteD12	// call without return value
.debug
	.dw '.stabn 0x44,0,99,',0,0
	.dd LM73-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM73:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,100,',0,0
	.dd LM74-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM74:
	R1=241	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,101,',0,0
	.dd LM75-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM75:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	CMP R1,0	// QImode test
	JZ L38	// QImode NE
	PC=L37
L38:
.debug
	.dw '.stabn 0x44,0,102,',0,0
	.dd LM76-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM76:
	R1=242	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
L37:
.debug
	.dw '.stabn 0x44,0,103,',0,0
	.dd LM77-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM77:
.debug
	.dw '.stabn 0x44,0,103,',0,0
	.dd LM78-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LM78:
L36:

	sp+=1
	pop bp from [sp]
	retf
	.endp	// end of F_D12_AcknowledgeEndpoint

.debug
	.dw '.stabs "endp:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME7-_F_D12_AcknowledgeEndpoint
	.dw 0x0d,0x0a
.code
LME7:
.code
.debug
	.dw '.stabs "F_D12_ReadInterruptRegister:F4",36,0,0,',0,0,offset _F_D12_ReadInterruptRegister,seg _F_D12_ReadInterruptRegister,0x0d,0x0a
.CODE
.public _F_D12_ReadInterruptRegister
_F_D12_ReadInterruptRegister:	.proc
.debug
	.dw '.stabn 0x44,0,105,',0,0
	.dd LM79-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM79:
	// total=2, vars=2
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=2
	bp=sp+1

	R1=BP+5
	[bp+1]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,106,',0,0
	.dd LM80-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM80:
LBB3:
.debug
	.dw '.stabn 0x44,0,107,',0,0
	.dd LM81-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM81:
	call _F_InitWriteD12	// call without return value
.debug
	.dw '.stabn 0x44,0,108,',0,0
	.dd LM82-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM82:
	R1=244	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,109,',0,0
	.dd LM83-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM83:
	call _F_InitReadD12	// call without return value
.debug
	.dw '.stabn 0x44,0,110,',0,0
	.dd LM84-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM84:
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_ReadD12	// call with return value
	SP=SP+1
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,111,',0,0
	.dd LM85-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM85:
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_ReadD12	// call with return value
	SP=SP+1
	[_j]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,112,',0,0
	.dd LM86-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM86:
	R1=[_j]	// QImode move
	R2=R1 lsl 4
	R2=R2 lsl 4
	[_j]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,113,',0,0
	.dd LM87-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM87:
	R1=[_j]	// QImode move
	R2=[BP]	// QImode move
	[_j]=R1+R2
.debug
	.dw '.stabn 0x44,0,114,',0,0
	.dd LM88-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM88:
	R2=[_j]	// QImode move
	R1=R2	// QImode move
	pc=L39	// Indirect jump
.debug
	.dw '.stabn 0x44,0,115,',0,0
	.dd LM89-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM89:
LBE3:
.debug
	.dw '.stabn 0x44,0,115,',0,0
	.dd LM90-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LM90:
L39:

	sp+=2
	pop bp from [sp]
	retf
	.endp	// end of F_D12_ReadInterruptRegister

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB3-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "b1:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE3-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME8-_F_D12_ReadInterruptRegister
	.dw 0x0d,0x0a
.code
LME8:
.code
.debug
	.dw '.stabs "F_D12_ReadLastTransactionStatus:F4",36,0,0,',0,0,offset _F_D12_ReadLastTransactionStatus,seg _F_D12_ReadLastTransactionStatus,0x0d,0x0a
.CODE
.public _F_D12_ReadLastTransactionStatus
_F_D12_ReadLastTransactionStatus:	.proc
.debug
	.dw '.stabn 0x44,0,117,',0,0
	.dd LM91-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LM91:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,118,',0,0
	.dd LM92-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LM92:
	call _F_InitWriteD12	// call without return value
.debug
	.dw '.stabn 0x44,0,119,',0,0
	.dd LM93-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LM93:
	R1=[BP]	// QImode move
	R2=[R1]	// QImode move
	R1=R2+64
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,120,',0,0
	.dd LM94-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LM94:
	call _F_InitReadD12	// call without return value
.debug
	.dw '.stabn 0x44,0,121,',0,0
	.dd LM95-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LM95:
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_ReadD12	// call with return value
	SP=SP+1
	R2=R1	// QImode move
	R1=R2	// QImode move
	pc=L40	// Indirect jump
.debug
	.dw '.stabn 0x44,0,122,',0,0
	.dd LM96-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LM96:
.debug
	.dw '.stabn 0x44,0,122,',0,0
	.dd LM97-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LM97:
L40:

	sp+=1
	pop bp from [sp]
	retf
	.endp	// end of F_D12_ReadLastTransactionStatus

.debug
	.dw '.stabs "bEndp:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME9-_F_D12_ReadLastTransactionStatus
	.dw 0x0d,0x0a
.code
LME9:
.code
.debug
	.dw '.stabs "F_D12_ReadEndpoint:F4",36,0,0,',0,0,offset _F_D12_ReadEndpoint,seg _F_D12_ReadEndpoint,0x0d,0x0a
.CODE
.public _F_D12_ReadEndpoint
_F_D12_ReadEndpoint:	.proc
.debug
	.dw '.stabn 0x44,0,124,',0,0
	.dd LM98-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM98:
	// total=3, vars=3
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=3
	bp=sp+1

	R1=BP+6
	[bp+2]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,125,',0,0
	.dd LM99-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM99:
LBB4:
.debug
	.dw '.stabn 0x44,0,126,',0,0
	.dd LM100-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM100:
	R1=[_bEPPflags]	// QImode move
	R2=4	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	call __rshu1	// call with return value
	SP=SP+2
	R2=R1&1
	CMP R2,0	// QImode test
	JZ L51	// QImode NE
	PC=L42
L51:
.debug
	.dw '.stabn 0x44,0,127,',0,0
	.dd LM101-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM101:
	call _F_Interrupt_Off	// call without return value
L42:
.debug
	.dw '.stabn 0x44,0,128,',0,0
	.dd LM102-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM102:
	call _F_InitWriteD12	// call without return value
.debug
	.dw '.stabn 0x44,0,129,',0,0
	.dd LM103-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM103:
	R2=[bp+2]	// QImode move
	R1=[R2]	// QImode move
	[SP--]=R1	// QImode move
	R1=(-253)	// QImode move
	[SP--]=R1	// QImode move
	call _F_WriteCmdOrDataToD12	// call without return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,130,',0,0
	.dd LM104-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM104:
	call _F_InitReadD12	// call without return value
.debug
	.dw '.stabn 0x44,0,131,',0,0
	.dd LM105-_F_D12_ReadEndpoint
	.dw 0x0d,0x0a
.code
LM105:
	R1=(-254)	// QImode move
	[SP--]=R1	// QImode move
	call _F_ReadD12	// call with return value
	SP=SP+1
	R2=R1&1
	CMP R2,0	// QImode test
	JZ L52	// QImode NE
	PC=L43
L52:
.debug

⌨️ 快捷键说明

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