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

📄 hal_power.ps

📁 一款SmartPhone的驱动代码
💻 PS
📖 第 1 页 / 共 4 页
字号:
	.def	GetMouseY,	val	8,	scl	8,	type	0x94,	endef
	.def	SetMouseXY,	val	12,	scl	8,	type	0x91,	endef
	.def	GetMouseButton,	val	16,	scl	8,	type	0x94,	endef
	.def	SetMouseRange,	val	20,	scl	8,	type	0x91,	endef
	.def	SuspendMouse,	val	24,	scl	8,	type	0x91,	endef
	.def	ResumeMouse,	val	28,	scl	8,	type	0x91,	endef
	.def	UpdateKeyboard,	val	32,	scl	8,	type	0x94,	endef
	.def	GetKeyboardState,	val	36,	scl	8,	type	0x192,	endef
	.def	SuspendKeyboard,	val	40,	scl	8,	type	0x91,	endef
	.def	ResumeKeyboard,	val	44,	scl	8,	type	0x91,	endef
	.def	SetLeds,	val	48,	scl	8,	type	0x91,	endef
	.def	WaitEvent,	val	52,	scl	8,	type	0x94,	endef
	.def	T_IAL_Input,	val	56,	scl	102,	tag	T_IAL_Input,	size	56,	endef
	.def	T_IAL_Input,	scl	13,	tag	T_IAL_Input,	size	56,	type	0x8,	endef
	.align	1
	.def	PowerSaveMode,	val	PowerSaveMode,	scl	2,	type	0x2d,	endef
	.global	PowerSaveMode

	.loc	20
	.def	ent,	scl	101,	type	0x0,	endef
PowerSaveMode:
;	.frame	%sp,12,$31		# vars= 0, regs= 3/0, args= 0, extra= 0
;	.mask	0x80030000,-4
;	.fmask	0x00000000,0
	pushn	%r1
	ld.w	%r0,%r12
	.def	enable,	val	0,	scl	17,	type	0xd,	endef

	.loc	21
	.def	begin,	scl	100,	type	0x0,	endef
	.def	reg0012,	val	10,	scl	4,	type	0xd,	endef
	.def	reg0014,	val	13,	scl	4,	type	0xd,	endef
	.def	val16,	val	0,	scl	4,	type	0xd,	endef
	.def	i,	val	0,	scl	4,	type	0xf,	endef
	.def	idx,	val	11,	scl	4,	type	0x5,	endef
	.def	index,	val	10,	scl	4,	type	0xf,	endef

	.loc	27
	xld.w	%r12,0x00000014		; 20
	xcall	halReadReg16

	.loc	29
	ld.uh	%r0,%r0
	cmp	%r0,0x0
	xjreq	__L2

	.loc	31
	ld.w	%r0,0x0
	xld.w	%r1,0x00000040		; 64
__L6:

	.loc	33
	xld.w	%r12,0x00000014		; 20
	xcall	halReadReg16
	ld.w	%r13,%r10

	.loc	35
	ld.w	%r10,%r13
	and	%r10,%r1
	ld.uh	%r10,%r10
	cmp	%r10,0x0
	xjrne	__L4

	.loc	31
	xadd	%r0,%r0,1
	xcmp	%r0,1048574
	xjrule	__L6
__L4:

	.loc	39
	xcmp	%r0,1048575
	xjrne	__L9

	.loc	40
	ld.w	%r10,0x0
	xjp	__L17
__L9:

	.loc	42
	xoor	%r13,%r13,0x00000001

	.loc	43
	ld.uh	%r13,%r13
	xld.w	%r12,0x00000014		; 20
	xcall	halWriteReg16

	.loc	46
	xld.w	%r12,0x00000012		; 18
	xcall	halReadReg16
	xoor	%r10,%r10,0x00000001

	.loc	47
	ld.uh	%r13,%r10
	xld.w	%r12,0x00000012		; 18

	.loc	48
	xjp	__L18
__L2:

	.loc	54
	xld.w	%r0,0x00000001		; 1

	.loc	56
	ld.w	%r11,0x0
	xld.w	%r13,0x00000107		; 263
__L14:

	.loc	58
	ld.w	%r12,%r11
	xsll	%r12,2
	xld.uh	%r10,[%r12+HalInfo+332]

	.loc	60
	xcmp	%r10,18
	xjrne	__L13

	.loc	63
	xld.uh	%r0,[%r12+HalInfo+334]

	.loc	56
__L13:
	xadd	%r11,%r11,1
	cmp	%r11,%r13
	xjrle	__L14

	.loc	67
	xld.w	%r12,0x00000012		; 18
	xcall	halReadReg16
	xand	%r10,%r10,0x0000fffe

	.loc	68
	ld.w	%r11,%r0
	xand	%r11,%r11,0x00000001

	.loc	69
	xld.w	%r12,0x00000012		; 18
	ld.w	%r13,%r10
	or	%r13,%r11
	xcall	halWriteReg16

	.loc	74
	xld.w	%r12,0x00000014		; 20
	xcall	halReadReg16

	.loc	75
	xld.w	%r12,0x00000014		; 20
	ld.w	%r13,%r10
	xand	%r13,%r13,0x0000fffe
__L18:
	xcall	halWriteReg16

	.loc	76
	xld.w	%r10,0x00000001		; 1
__L17:

	.loc	78
	.def	bend,	scl	110,	type	0x0,	endef
	popn	%r1
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.align	1
	.def	SetPll,	val	SetPll,	scl	2,	type	0x2c,	endef
	.global	SetPll

	.loc	88
	.def	ent,	scl	101,	type	0x0,	endef
SetPll:
;	.frame	%sp,24,$31		# vars= 4, regs= 5/0, args= 0, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3
	xsub	%sp,%sp,4
	.def	WhichPll,	val	12,	scl	17,	type	0xd,	endef
	.def	freq,	val	13,	scl	17,	type	0xf,	endef

	.loc	89
	.def	begin,	scl	100,	type	0x0,	endef
	.def	ClosestN,	val	3,	scl	4,	type	0xf,	endef
	.def	ClosestL,	val	2,	scl	4,	type	0xf,	endef
	.def	ClosestPll,	val	11,	scl	4,	type	0xf,	endef
	.def	ClosestDiff,	val	14,	scl	4,	type	0xf,	endef
	.def	n,	val	15,	scl	4,	type	0xf,	endef
	.def	l,	val	12,	scl	4,	type	0xf,	endef
	.def	pll,	val	10,	scl	4,	type	0xf,	endef
	.def	diff,	val	10,	scl	4,	type	0xf,	endef
	.def	ClosestVbits,	val	0,	scl	4,	type	0xf,	endef
	.def	v,	val	10,	scl	4,	type	0xf,	endef
	.def	vBits,	val	13,	scl	4,	type	0xf,	endef
	.def	factor,	val	12,	scl	4,	type	0xf,	endef
	.def	Kv,	val	1,	scl	4,	type	0xf,	endef
	.def	PllProgrammed,	val	0,	scl	1,	type	0xc,	endef

	.loc	93
	xld.w	%r7,0x00000001		; 1
	xld.b	[%sp],%r7

	.loc	99
	ld.w	%r2,0x0

	.loc	100
	ld.w	%r3,%r2

	.loc	101
	xld.w	%r11,[HalInfo+288]

	.loc	102
	cmp	%r13,%r11
	xjrule	__L21
	ld.w	%r14,%r13
	sub	%r14,%r11
	xjp	__L22
__L21:
	ld.w	%r14,%r11
	sub	%r14,%r13
__L22:

	.loc	103
	ld.w	%r1,0x0

	.loc	106
	xld.w	%r15,0x0000000f		; 15
	xld.w	%r6,HalInfo+288
	xld.w	%r5,[%r6]
__L25:

	.loc	108
	ld.w	%r12,0x0
	xadd	%r4,%r15,1
__L29:

	.loc	110
	xadd	%r10,%r12,1
	mlt.w	%r4,%r10
	ld.w	%r0,%alr
	mlt.w	%r0,%r5
	ld.w	%r10,%alr

	.loc	112
	cmp	%r13,%r10
	xjrule	__L30
	ld.w	%r7,%r13
	sub	%r7,%r10
	ld.w	%r10,%r7
	xjp	__L31
__L30:
	sub	%r10,%r13
__L31:

	.loc	114
	cmp	%r10,%r14
	xjruge	__L28

	.loc	116
	ld.w	%r3,%r15

	.loc	117
	ld.w	%r2,%r12

	.loc	118
	xadd	%r11,%r3,1
	xadd	%r10,%r2,1
	mlt.w	%r11,%r10
	ld.w	%r11,%alr
	xld.w	%r10,[%r6]
	mlt.w	%r11,%r10
	ld.w	%r11,%alr

	.loc	119
	cmp	%r13,%r11
	xjrule	__L33
	ld.w	%r14,%r13
	sub	%r14,%r11
	xjp	__L28
__L33:
	ld.w	%r14,%r11
	sub	%r14,%r13

	.loc	108
__L28:
	xadd	%r12,%r12,1
	xcmp	%r12,1023
	xjrule	__L29

	.loc	122
	xsub	%r15,%r15,1
	xcmp	%r15,-1
	xjrne	__L25

	.loc	130
	ld.w	%r0,0x0

	.loc	134
	xld.w	%r10,[HalInfo+328]
	xand	%r10,%r10,0x00000080
	xjrne	__L37

	.loc	136
	xld.w	%r13,0x00000001		; 1
	xld.w	%r15,0x00000001		; 1
	xld.w	%r14,-100000000			; 0xfa0a1f00
__L41:

	.loc	138
	ld.w	%r10,%r15
	xsll	%r10,%r13

	.loc	140
	mlt.w	%r11,%r10
	ld.w	%r12,%alr

	.loc	142
	ld.w	%r10,%r12
	add	%r10,%r14
	xcmp	%r10,310000000
	xjrugt	__L40

	.loc	151
	ld.w	%r1,0x0

	.loc	153
	ld.w	%r10,%r12
	add	%r10,%r14
	xcmp	%r10,100000000
	xjrugt	__L43

	.loc	154
	xld.w	%r1,0x00000002		; 2
	xjp	__L52
__L43:

	.loc	155
	xsub	%r10,%r12,200000001
	xcmp	%r10,99999999
	xjrugt	__L45

	.loc	156
	xld.w	%r1,0x00000005		; 5
	xjp	__L52
__L45:

	.loc	157
	xsub	%r10,%r12,300000001
	xcmp	%r10,109999999
	xjrugt	__L44

	.loc	158
	xld.w	%r1,0x00000007		; 7
__L44:

⌨️ 快捷键说明

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