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

📄 vr_function.asm

📁 图象识别礼包 原理图采用OrCad软件或PowerPCB软件打 识别各种格式 位图 矢量图
💻 ASM
📖 第 1 页 / 共 3 页
字号:
.code
LM60:
	R1=[_VR_PrevResult_Color]	// QImode move
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,134,',0,0
	.dd LM61-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM61:
	R1=[_VR_PrevResult_CenterX]	// QImode move
	CMP R1,29	// QImode compare
	JNG L49	// QImode GT
	PC=L37
L49:
.debug
	.dw '.stabn 0x44,0,137,',0,0
	.dd LM62-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM62:
	R1=1	// QImode move
	[SP--]=R1	// QImode move
	call _EagleTurnLeft	// call with return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,138,',0,0
	.dd LM63-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM63:
	pc=L38	// jump
L37:
.debug
	.dw '.stabn 0x44,0,139,',0,0
	.dd LM64-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM64:
	R1=[_VR_PrevResult_CenterX]	// QImode move
	CMP R1,70	// QImode compare
	JG L50	// QImode LE
	PC=L39
L50:
.debug
	.dw '.stabn 0x44,0,142,',0,0
	.dd LM65-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM65:
	R1=1	// QImode move
	[SP--]=R1	// QImode move
	call _EagleTurnRight	// call with return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,143,',0,0
	.dd LM66-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM66:
	pc=L38	// jump
L39:
.debug
	.dw '.stabn 0x44,0,147,',0,0
	.dd LM67-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM67:
	R2=BP	// QImode move
	R1=BP+1
	R2=[_VR_PrevResult_AreaH]	// QImode move
	R3=R2 lsl 4
	R3=R3 lsl 4
	R2=R1	// QImode move
	[R2]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,148,',0,0
	.dd LM68-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM68:
	R2=BP	// QImode move
	R1=BP+1
	R2=BP	// QImode move
	R3=BP+1
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=R2+[_VR_PrevResult_AreaL]	// addqi3_r0R
	R2=R1	// QImode move
	[R2]=R3	// QImode move
.debug
	.dw '.stabn 0x44,0,149,',0,0
	.dd LM69-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM69:
	call _EagleStopMotor	// call without return value
.debug
	.dw '.stabn 0x44,0,150,',0,0
	.dd LM70-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM70:
	R1=BP	// QImode move
	R2=BP+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	CMP R1,1999	// QImode compare
	JNG L51	// QImode GT
	PC=L41
L51:
.debug
	.dw '.stabn 0x44,0,151,',0,0
	.dd LM71-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM71:
	R1=1	// QImode move
	[SP--]=R1	// QImode move
	call _EagleGoFormer	// call with return value
	SP=SP+1
	pc=L38	// jump
L41:
.debug
	.dw '.stabn 0x44,0,153,',0,0
	.dd LM72-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM72:
	R1=BP	// QImode move
	R2=BP+1
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	CMP R1,3000	// QImode compare
	JG L52	// QImode LE
	PC=L43
L52:
.debug
	.dw '.stabn 0x44,0,155,',0,0
	.dd LM73-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM73:
	R1=1	// QImode move
	[SP--]=R1	// QImode move
	call _EagleGoBack	// call with return value
	SP=SP+1
	pc=L38	// jump
L43:
.debug
	.dw '.stabn 0x44,0,157,',0,0
	.dd LM74-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM74:
	call _EagleStopMotor	// call without return value
L44:
L42:
L40:
L38:
.debug
	.dw '.stabn 0x44,0,159,',0,0
	.dd LM75-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM75:
LBE6:
	pc=L34	// jump
L35:
.debug
	.dw '.stabn 0x44,0,161,',0,0
	.dd LM76-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM76:
	R1=13	// QImode move
	[SP--]=R1	// QImode move
	call _PlayRespond	// call without return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,163,',0,0
	.dd LM77-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM77:
	R1=0	// QImode move
	[_VR_TimeFlag]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,164,',0,0
	.dd LM78-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM78:
	R1=0	// QImode move
	[_VR_TimeDeldy]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,165,',0,0
	.dd LM79-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM79:
	pc=L45	// jump
L33:
.debug
	.dw '.stabn 0x44,0,169,',0,0
	.dd LM80-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM80:
	R1=0	// QImode move
	[_VR_TimeFlag]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,170,',0,0
	.dd LM81-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM81:
	R1=0	// QImode move
	[_VR_TimeDeldy]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,171,',0,0
	.dd LM82-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM82:
	R1=12	// QImode move
	[SP--]=R1	// QImode move
	call _PlayRespond	// call without return value
	SP=SP+1
.debug
	.dw '.stabn 0x44,0,172,',0,0
	.dd LM83-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM83:
	R1=12	// QImode move
	[SP--]=R1	// QImode move
	call _PlayRespond	// call without return value
	SP=SP+1
L45:
.debug
	.dw '.stabn 0x44,0,174,',0,0
	.dd LM84-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM84:
LBE4:
.debug
	.dw '.stabn 0x44,0,174,',0,0
	.dd LM85-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LM85:
L29:

	sp+=4
	pop bp from [sp]
	retf
	.endp	// end of VR_Chase_Ball

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB4-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "i:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "j:1",128,0,0,1',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "K:1",128,0,0,2',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB5-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE5-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB6-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE6-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE4-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME2-_VR_Chase_Ball
	.dw 0x0d,0x0a
.code
LME2:
.code
.debug
	.dw '.stabs "Delay:F1",36,0,0,',0,0,offset _Delay,seg _Delay,0x0d,0x0a
.CODE
.public _Delay
_Delay:	.proc
.debug
	.dw '.stabn 0x44,0,185,',0,0
	.dd LM86-_Delay
	.dw 0x0d,0x0a
.code
LM86:
	// total=0, vars=0
	// frame_pointer_needed: 1
	push bp to [sp]
	bp=sp+1

	R1=BP+3
.debug
	.dw '.stabn 0x44,0,186,',0,0
	.dd LM87-_Delay
	.dw 0x0d,0x0a
.code
LM87:
	R2=[_VR_TimeDeldy]	// QImode move
	R3=R1	// QImode move
	CMP R2,[R3]	// QImode compare
	JZ L55	// QImode NE
	PC=L54
L55:
	R2=1	// QImode move
	[_VR_TimeFlag]=R2	// QImode move
L54:
.debug
	.dw '.stabn 0x44,0,187,',0,0
	.dd LM88-_Delay
	.dw 0x0d,0x0a
.code
LM88:
.debug
	.dw '.stabn 0x44,0,187,',0,0
	.dd LM89-_Delay
	.dw 0x0d,0x0a
.code
LM89:
L53:

	pop bp from [sp]
	retf
	.endp	// end of Delay

.debug
	.dw '.stabs "time:p1",160,0,0,3',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME3-_Delay
	.dw 0x0d,0x0a
.code
LME3:
.code
.debug
	.dw '.stabs "EagleGoFormer:F1",36,0,0,',0,0,offset _EagleGoFormer,seg _EagleGoFormer,0x0d,0x0a
.CODE
.public _EagleGoFormer
_EagleGoFormer:	.proc
.debug
	.dw '.stabn 0x44,0,209,',0,0
	.dd LM90-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM90:
	// 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,210,',0,0
	.dd LM91-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM91:
LBB7:
.debug
	.dw '.stabn 0x44,0,211,',0,0
	.dd LM92-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM92:
	R1=BP	// QImode move
	R2=BP+1
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
L57:
	R1=BP	// QImode move
	R2=BP+1
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	R2=[bp+2]	// QImode move
	CMP R1,[R2]	// QImode compare
	JNB L67	// QImode LTU
	PC=L60
L67:
	pc=L58	// jump
L60:
.debug
	.dw '.stabn 0x44,0,214,',0,0
	.dd LM93-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM93:
LBB8:
	R1=5120	// QImode move
	[SP--]=R1	// QImode move
	R1=28677	// QImode move
	[SP--]=R1	// QImode move
	call _SP_Export	// call with return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,215,',0,0
	.dd LM94-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM94:
	R1=0	// QImode move
	[_VR_TimeFlag]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,216,',0,0
	.dd LM95-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM95:
	R1=0	// QImode move
	[_VR_TimeDeldy]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,217,',0,0
	.dd LM96-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM96:
L61:
	R1=[_VR_TimeFlag]	// QImode move
	CMP R1,1	// QImode compare
	JZ L68	// QImode NE
	PC=L63
L68:
	pc=L62	// jump
L63:
	R1=30	// QImode move
	[SP--]=R1	// QImode move
	call _Delay	// call with return value
	SP=SP+1
	pc=L61	// jump
L62:
.debug
	.dw '.stabn 0x44,0,219,',0,0
	.dd LM97-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM97:
	R1=0	// QImode move
	[SP--]=R1	// QImode move
	R1=28677	// QImode move
	[SP--]=R1	// QImode move
	call _SP_Export	// call with return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,220,',0,0
	.dd LM98-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM98:
	R1=0	// QImode move
	[_VR_TimeFlag]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,221,',0,0
	.dd LM99-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM99:
	R1=0	// QImode move
	[_VR_TimeDeldy]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,222,',0,0
	.dd LM100-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM100:
L64:
	R1=[_VR_TimeFlag]	// QImode move
	CMP R1,1	// QImode compare
	JZ L69	// QImode NE
	PC=L66
L69:
	pc=L59	// jump
L66:
	R1=30	// QImode move
	[SP--]=R1	// QImode move
	call _Delay	// call with return value
	SP=SP+1
	pc=L64	// jump
L65:
.debug
	.dw '.stabn 0x44,0,223,',0,0
	.dd LM101-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM101:
LBE8:
.debug
	.dw '.stabn 0x44,0,211,',0,0
	.dd LM102-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM102:
L59:
	R1=BP	// QImode move
	R2=BP+1
	R3=BP	// QImode move
	R1=BP+1
	R2=BP	// QImode move
	R3=BP+1
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=R2+1
	R2=R1	// QImode move
	[R2]=R3	// QImode move
	pc=L57	// jump
L58:
.debug
	.dw '.stabn 0x44,0,224,',0,0
	.dd LM103-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM103:
LBE7:
.debug
	.dw '.stabn 0x44,0,224,',0,0
	.dd LM104-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LM104:
L56:

	sp+=3
	pop bp from [sp]
	retf
	.endp	// end of EagleGoFormer

.debug
	.dw '.stabs "VR_Step:p1",160,0,0,6',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB7-_EagleGoFormer
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "i:4",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "j:4",128,0,0,1',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB8-_EagleGoFormer
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE8-_EagleGoFormer
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE7-_EagleGoFormer
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME4-_EagleGoFormer
	.dw 0x0d,0x0a
.code
LME4:
.code
.debug
	.dw '.stabs "EagleGoBack:F1",36,0,0,',0,0,offset _EagleGoBack,seg _EagleGoBack,0x0d,0x0a
.CODE
.public _EagleGoBack
_EagleGoBack:	.proc
.debug
	.dw '.stabn 0x44,0,233,',0,0
	.dd LM105-_EagleGoBack
	.dw 0x0d,0x0a
.code
LM105:
	// 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,234,',0,0
	.dd LM106-_EagleGoBack
	.dw 0x0d,0x0a
.code
LM106:
LBB9:
.debug
	.dw '.stabn 0x44,0,236,',0,0
	.dd LM107-_EagleGoBack
	.dw 0x0d,0x0a
.code
LM107:
	R1=BP	// QImode move
	R2=BP+1
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
L71:
	R1=BP	// QImode move
	R2=BP+1
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	R2=[bp+2]	// QImode move
	CMP R1,[R2]	// QImode compare
	JNL L81	// QImode LT
	PC=L74
L81:
	pc=L72	// jump
L74:
.debug
	.dw '.stabn 0x44,0,238,',0,0
	.dd LM108-_EagleGoBack
	.dw 0x0d,0x0a
.code
LM108:
LBB10:
	R1=10240	// QImode move
	[SP--]=R1	// QImode move
	R1=28677	// QImode move
	[SP--]=R1	// QImode move
	call _SP_Export	// call with return value
	SP=SP+2
.debug
	.dw '.stabn 0x44,0,239,',0,0
	.dd LM109-_EagleGoBack
	.dw 0x0d,0x0a
.code
LM109:
	R1=0	// QImode move
	[_VR_TimeFlag]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,240,',0,0
	.dd LM110-_EagleGoBack
	.dw 0x0d,0x0a
.code
LM110:
	R1=0	// QImode move
	[_VR_TimeDeldy]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,241,',0,0
	.dd LM111-_EagleGoBack
	.dw 0x0d,0x0a
.code
LM111:
L75:
	R1=[_VR_TimeFlag]	// QImode move
	CMP R1,1	// QImode compare
	JZ L82	// QImode NE

⌨️ 快捷键说明

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