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

📄 guiial.ms

📁 一款SmartPhone的驱动代码
💻 MS
📖 第 1 页 / 共 4 页
字号:
	.align	1
	.def	SuspendKeyboard,	val	SuspendKeyboard,	scl	3,	type	0x21,	endef

	.loc	342
	.def	ent,	scl	101,	type	0x0,	endef
SuspendKeyboard:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0

	.loc	344
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.align	1
	.def	ResumeKeyboard,	val	ResumeKeyboard,	scl	3,	type	0x21,	endef

	.loc	363
	.def	ent,	scl	101,	type	0x0,	endef
ResumeKeyboard:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0

	.loc	365
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.align	1
	.def	WaitEvent,	val	WaitEvent,	scl	2,	type	0x24,	endef
	.global	WaitEvent

	.loc	389
	.def	ent,	scl	101,	type	0x0,	endef
WaitEvent:
;	.frame	%sp,32,$31		# vars= 8, regs= 5/0, args= 4, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	sub	%sp,0x3		; 	xsub	%sp,%sp,12
	ld.w	[%sp+0x2],%r12	; 	xld.w	[%sp+8],%r12
	.def	IsReturn,	val	8,	scl	9,	type	0xe,	endef

	.loc	391
	.def	begin,	scl	100,	type	0x0,	endef
	.def	retvalue,	val	1,	scl	4,	type	0x4,	endef
	.def	PenEvent,	val	2,	scl	4,	type	0xe,	endef
	.def	KeyEvent,	val	0,	scl	4,	type	0xe,	endef
	.def	IsTimeOut,	val	3,	scl	4,	type	0xe,	endef
	.def	p_flgptn,	val	4,	scl	1,	type	0xe,	endef
	ld.w	%r1,0x0
__LX33:				; __L33:

	.loc	398
	ld.w	%r0,0x0

	.loc	399
	ld.w	%r2,%r0

	.loc	400
	ld.w	%r3,%r0

	.loc	403
	ext	IsPenDown+0x0@h	; 	xld.w	%r10,[IsPenDown]
	ext	IsPenDown+0x0@m
	ld.w	%r9,IsPenDown+0x0@l
	ld.w	%r10,[%r9]
	cmp	%r10,0x0
	jrne	__LX42		; 	xjrne	__L42

	.loc	405
	ld.w	%r11,[%sp+0x2]	; 	xld.w	%r11,[%sp+8]
	cmp	%r11,0x0
	jreq	__LX35		; 	xjreq	__L35

	.loc	407
	ld.w	%r10,0xa	; 	xld.w	%r10,0x0000000a		; 10
	jp	__LX49		; 	xjp	__L49
__LX35:				; __L35:

	.loc	409
	ld.w	%r10,0x3f	; 	xld.w	%r10,-1			; 0xffffffff
__LX49:				; __L49:
	ld.w	[%sp+0x0],%r10	; 	xld.w	[%sp],%r10
	ld.w	%r12,%sp	; 	xadd	%r12,%sp,4
	add	%r12,0x4
	ld.w	%r13,0x1	; 	xld.w	%r13,0x00000001		; 1
	ext	0x4		; 	xld.w	%r14,0x00000111		; 273
	ld.w	%r14,0x11
	ld.w	%r15,0x2	; 	xld.w	%r15,0x00000002		; 2
	ext	twai_flg@rh	; 	xcall	twai_flg
	ext	twai_flg@rm
	call	twai_flg@rl

	.loc	411
	ld.w	%r10,[%sp+0x1]	; 	xld.w	%r10,[%sp+4]
	and	%r10,0x1	; 	xand	%r10,%r10,0x00000001
	jreq	__LX37		; 	xjreq	__L37

	.loc	413
	ld.w	%r2,0x1		; 	xld.w	%r2,0x00000001		; 1

	.loc	414
	ld.w	%r12,%r2
	ext	0x4		; 	xld.w	%r13,0x00000110		; 272
	ld.w	%r13,0x10
	ext	clr_flg@rh	; 	xcall	clr_flg
	ext	clr_flg@rm
	call	clr_flg@rl

	.loc	415
	jp	__LX34		; 	xjp	__L34
__LX37:				; __L37:

	.loc	416
	ld.w	%r10,[%sp+0x1]	; 	xld.w	%r10,[%sp+4]
	and	%r10,0x10	; 	xand	%r10,%r10,0x00000010
	jreq	__LX39		; 	xjreq	__L39

	.loc	418
	ld.w	%r0,0x1		; 	xld.w	%r0,0x00000001		; 1

	.loc	419
	ld.w	%r12,%r0
	ext	0x4		; 	xld.w	%r13,0x00000101		; 257
	ld.w	%r13,0x1
	ext	clr_flg@rh	; 	xcall	clr_flg
	ext	clr_flg@rm
	call	clr_flg@rl

	.loc	420
	jp	__LX34		; 	xjp	__L34
__LX39:				; __L39:

	.loc	422
	ld.w	%r3,0x1		; 	xld.w	%r3,0x00000001		; 1
__LX34:				; __L34:

	.loc	426
	ext	IsPenDown+0x0@h	; 	xld.w	%r10,[IsPenDown]
	ext	IsPenDown+0x0@m
	ld.w	%r9,IsPenDown+0x0@l
	ld.w	%r10,[%r9]
	cmp	%r10,0x0
	jrne	__LX42		; 	xjrne	__L42
	cmp	%r2,0x0
	jreq	__LX41		; 	xjreq	__L41
__LX42:				; __L42:

	.loc	428
	ext	UpdateMouse@rm	; 	xcall	UpdateMouse
	call	UpdateMouse@rl
	cmp	%r10,0x0
	jreq	__LX41		; 	xjreq	__L41

	.loc	431
	ld.w	%r10,%r1
	or	%r10,0x1	; 	xoor	%r10,%r10,0x00000001
	jp	__LX48		; 	xjp	__L48
__LX41:				; __L41:

	.loc	436
	cmp	%r0,0x0
	jreq	__LX44		; 	xjreq	__L44

	.loc	438
	call	UpdateKeyboard	; 	xcall	UpdateKeyboard
	cmp	%r10,0x0
	jreq	__LX44		; 	xjreq	__L44

	.loc	441
	ld.w	%r10,%r1
	or	%r10,0x2	; 	xoor	%r10,%r10,0x00000002
	jp	__LX48		; 	xjp	__L48
__LX44:				; __L44:

	.loc	445
	cmp	%r3,0x0
	jreq	__LX33		; 	xjreq	__L33

	.loc	447
	ld.w	%r10,0x0

	.loc	449
__LX48:				; __L48:

	.loc	450
	.def	bend,	scl	110,	type	0x0,	endef
	add	%sp,0x3		; 	xadd	%sp,%sp,12
	popn	%r3
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.global	tIAL_Input
	.data
	.align	2
tIAL_Input:
	.word	UpdateMouse
	.word	GetMouseX
	.word	GetMouseY
	.word	SetMouseXY
	.word	GetMouseButton
	.word	SetMouseRange
	.word	SuspendMouse
	.word	ResumeMouse
	.word	UpdateKeyboard
	.word	GetKeyboardState
	.word	SuspendKeyboard
	.word	ResumeKeyboard
	.word	SetLeds
	.word	WaitEvent
	.code
	.align	1
	.def	fnIAL_InitInput,	val	fnIAL_InitInput,	scl	2,	type	0x21,	endef
	.global	fnIAL_InitInput

	.loc	486
	.def	ent,	scl	101,	type	0x0,	endef
fnIAL_InitInput:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0

	.loc	487
	ld.w	%r15,0x0
	ext	IsPenDown+0x0@h	; 	xld.w	[IsPenDown],%r15
	ext	IsPenDown+0x0@m
	ld.w	%r9,IsPenDown+0x0@l
	ld.w	[%r9],%r15

	.loc	488
	ext	IsKeyDown+0x0@h	; 	xld.w	[IsKeyDown],%r15
	ext	IsKeyDown+0x0@m
	ld.w	%r9,IsKeyDown+0x0@l
	ld.w	[%r9],%r15

	.loc	490
	ext	tIAL_Input+0x0@h	; 	xld.w	%r10,tIAL_Input
	ext	tIAL_Input+0x0@m
	ld.w	%r10,tIAL_Input+0x0@l
	ext	tpIAL_Input+0x0@h	; 	xld.w	[tpIAL_Input],%r10
	ext	tpIAL_Input+0x0@m
	ld.w	%r9,tpIAL_Input+0x0@l
	ld.w	[%r9],%r10

	.loc	492
	ext	fnIHL_InitMouse@rh	; 	xcall	fnIHL_InitMouse
	ext	fnIHL_InitMouse@rm
	call	fnIHL_InitMouse@rl

	.loc	493
	ext	fnIHL_InitKeyboard@rh	; 	xcall	fnIHL_InitKeyboard
	ext	fnIHL_InitKeyboard@rm
	call	fnIHL_InitKeyboard@rl

	.loc	496
	ld.w	%r15,0x0
	ext	wXPos+0x0@h	; 	xld.w	[wXPos],%r15
	ext	wXPos+0x0@m
	ld.w	%r9,wXPos+0x0@l
	ld.w	[%r9],%r15

	.loc	497
	ext	wButtons+0x0@h	; 	xld.w	[wButtons],%r15
	ext	wButtons+0x0@m
	ld.w	%r9,wButtons+0x0@l
	ld.w	[%r9],%r15

	.loc	498
	ext	wMinX+0x0@h	; 	xld.w	[wMinX],%r15
	ext	wMinX+0x0@m
	ld.w	%r9,wMinX+0x0@l
	ld.w	[%r9],%r15

	.loc	499
	ext	tpGAL_Output+0x0@h	; 	xld.w	%r11,[tpGAL_Output]
	ext	tpGAL_Output+0x0@m
	ld.w	%r9,tpGAL_Output+0x0@l
	ld.w	%r11,[%r9]
	ext	0xc		; 	xld.w	%r10,[%r11+12]
	ld.w	%r10,[%r11]
	sub	%r10,0x2	; 	xsub	%r10,%r10,2
	ext	wMaxX+0x0@h	; 	xld.w	[wMaxX],%r10
	ext	wMaxX+0x0@m
	ld.w	%r9,wMaxX+0x0@l
	ld.w	[%r9],%r10

	.loc	500
	ext	wMinY+0x0@h	; 	xld.w	[wMinY],%r15
	ext	wMinY+0x0@m
	ld.w	%r9,wMinY+0x0@l
	ld.w	[%r9],%r15

	.loc	501
	ext	0x10		; 	xld.w	%r10,[%r11+16]
	ld.w	%r10,[%r11]
	sub	%r10,0x2	; 	xsub	%r10,%r10,2
	ext	wMaxY+0x0@h	; 	xld.w	[wMaxY],%r10
	ext	wMaxY+0x0@m
	ld.w	%r9,wMaxY+0x0@l
	ld.w	[%r9],%r10

	.loc	503
	ext	ubState+0x0@h	; 	xld.w	%r12,ubState
	ext	ubState+0x0@m
	ld.w	%r12,ubState+0x0@l
	ld.w	%r13,0x0
	ext	0x2		; 	xld.w	%r14,0x00000080		; 128
	ld.w	%r14,0x0
	ext	memset@rh	; 	xcall	memset
	ext	memset@rm
	call	memset@rl

	.loc	504
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.def	tpIAL_Input,	val	tpIAL_Input,	scl	2,	tag	T_IAL_Input,	size	56,	type	0x18,	endef

	.comm	tpIAL_Input 4
	.def	wXPos,	val	wXPos,	scl	3,	type	0x4,	endef

	.lcomm	wXPos 4
	.def	wYPos,	val	wYPos,	scl	3,	type	0x4,	endef

	.lcomm	wYPos 4
	.def	wMinX,	val	wMinX,	scl	3,	type	0x4,	endef

	.lcomm	wMinX 4
	.def	wMaxX,	val	wMaxX,	scl	3,	type	0x4,	endef

	.lcomm	wMaxX 4
	.def	wMinY,	val	wMinY,	scl	3,	type	0x4,	endef

	.lcomm	wMinY 4
	.def	wMaxY,	val	wMaxY,	scl	3,	type	0x4,	endef

	.lcomm	wMaxY 4
	.def	wButtons,	val	wButtons,	scl	3,	type	0x4,	endef

	.lcomm	wButtons 4
	.def	IsPenDown,	val	IsPenDown,	scl	2,	type	0xe,	endef

	.comm	IsPenDown 4
	.def	IsKeyDown,	val	IsKeyDown,	scl	2,	type	0xe,	endef

	.comm	IsKeyDown 4
	.def	ubState,	val	ubState,	scl	3,	dim	128,	size	128,	type	0x3c,	endef

	.lcomm	ubState 128
	.def	tIAL_Input,	val	tIAL_Input,	scl	2,	tag	T_IAL_Input,	size	56,	type	0x8,	endef


	.endfile

⌨️ 快捷键说明

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