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

📄 hal_lut.ps

📁 一款SmartPhone的驱动代码
💻 PS
📖 第 1 页 / 共 4 页
字号:
	xjreq	__L27

	.loc	193
	xoor	%r13,%r13,0x00000020
	xjp	__L21
__L27:

	.loc	195
	xand	%r13,%r13,0x0000ffdf
__L21:

	.loc	199
	ld.uh	%r13,%r13
	xld.w	%r12,0x00000200		; 512
	xcall	halWriteReg16

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

	.loc	209
	.def	ent,	scl	101,	type	0x0,	endef
GetLutBypassEnable:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	.def	LutNum,	val	12,	scl	17,	tag	__T18,	size	4,	type	0xa,	endef

	.loc	210
	cmp	%r12,0x0
	xjreq	__L33
	xcmp	%r12,1
	xjreq	__L36
__L33:

	.loc	214
	xld.w	%r12,0x00000200		; 512
	xcall	halReadReg16

	.loc	214
	xsrl	%r10,4

	.loc	217
	xjp	__L41
__L36:

	.loc	221
	xld.w	%r12,0x00000200		; 512
	xcall	halReadReg16

	.loc	221
	xsrl	%r10,5
__L41:
	xand	%r10,%r10,0x00000001

	.loc	222

	.loc	227
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.align	1
	.def	GetLutMode,	val	GetLutMode,	scl	2,	type	0x2d,	endef
	.global	GetLutMode

	.loc	236
	.def	ent,	scl	101,	type	0x0,	endef
GetLutMode:
;	.frame	%sp,8,$31		# vars= 0, regs= 2/0, args= 0, extra= 0
;	.mask	0x80010000,-4
;	.fmask	0x00000000,0
	pushn	%r0
	.def	LutNum,	val	12,	scl	17,	tag	__T18,	size	4,	type	0xa,	endef

	.loc	237
	.def	begin,	scl	100,	type	0x0,	endef
	.def	bpp,	val	0,	scl	4,	type	0x4,	endef
	.def	LutBypass,	val	10,	scl	4,	type	0x4,	endef

	.loc	240
	cmp	%r12,0x0
	xjreq	__L45
	xcmp	%r12,1
	xjreq	__L61
__L45:

	.loc	244
	ld.w	%r12,0x0
	xcall	GetBitsPerPixel
	ld.w	%r0,%r10

	.loc	245
	ld.w	%r12,0x0
	xcall	GetLutBypassEnable
	ld.ub	%r10,%r10

	.loc	247
	cmp	%r10,0x0
	xjrne	__L47
	xcmp	%r0,16
	xjrle	__L46
__L47:

	.loc	249
	xcmp	%r0,16
	xjreq	__L65
	xjrgt	__L54
__L79:
	xcmp	%r0,8
	xjreq	__L64
	xjp	__L74
__L54:
	xcmp	%r0,32
	xjreq	__L66

	.loc	254
	xjp	__L74
__L46:

	.loc	259
	xcmp	%r0,8
	xjrne	__L78

	.loc	261
	xld.w	%r10,0x00000001		; 1
	xjp	__L77
__L61:

	.loc	270
	xld.w	%r12,0x00000001		; 1
	xcall	GetBitsPerPixel
	ld.w	%r0,%r10

	.loc	271
	xld.w	%r12,0x00000001		; 1
	xcall	GetLutBypassEnable
	ld.ub	%r10,%r10

	.loc	273
	cmp	%r10,0x0
	xjreq	__L62

	.loc	275
	xcmp	%r0,16
	xjreq	__L65
	xjrle	__L79
	xjp	__L54

	.loc	277
__L64:
	xld.w	%r10,0x00000004		; 4
	xjp	__L77
__L65:

	.loc	278
	xld.w	%r10,0x00000005		; 5
	xjp	__L77
__L66:

	.loc	279
	xld.w	%r10,0x00000006		; 6
	xjp	__L77
__L62:

	.loc	285
	xcmp	%r0,8
	xjreq	__L72
__L78:
	xcmp	%r0,16
	xjreq	__L73
	xjp	__L74

	.loc	287
__L72:
	xld.w	%r10,0x00000002		; 2
	xjp	__L77
__L73:

	.loc	288
	xld.w	%r10,0x00000003		; 3
	xjp	__L77
__L74:

	.loc	289
	ld.w	%r10,0x0
__L77:

	.loc	294
	.def	bend,	scl	110,	type	0x0,	endef
	popn	%r0
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.align	1
	.def	InitLut,	val	InitLut,	scl	2,	type	0x21,	endef
	.global	InitLut

	.loc	304
	.def	ent,	scl	101,	type	0x0,	endef
InitLut:
;	.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	WhichLut,	val	12,	scl	17,	tag	__T18,	size	4,	type	0xa,	endef
	.def	LutMode,	val	13,	scl	17,	tag	__T17,	size	4,	type	0xa,	endef

	.loc	305
	.def	begin,	scl	100,	type	0x0,	endef
	.def	i,	val	3,	scl	4,	type	0xd,	endef
	.def	red,	val	2,	scl	4,	type	0xc,	endef
	.def	green,	val	14,	scl	4,	type	0xc,	endef
	.def	blue,	val	1,	scl	4,	type	0xc,	endef
	.def	pSetLut,	val	10,	scl	4,	type	0x91,	endef
	.def	pSetLutEntry,	val	0,	scl	1,	type	0x91,	endef

	.loc	314
	xcmp	%r12,1
	xjrne	__L81

	.loc	316
	xld.w	%r10,SetLut2

	.loc	317
	xld.w	%r11,SetLut2Entry

	.loc	318
	xjp	__L104
__L81:

	.loc	321
	xld.w	%r10,SetLut1

	.loc	322
	xld.w	%r11,SetLut1Entry
__L104:
	xld.w	[%sp],%r11

	.loc	326
	xcmp	%r13,2
	xjreq	__L86
	xjrugt	__L103
	xcmp	%r13,1
	xjreq	__L85
	xjp	__L83
__L103:
	xcmp	%r13,3
	xjreq	__L94

	.loc	329
	xjp	__L83
__L85:

	.loc	332
	xld.w	%r12,LutInfo
	xld.w	%r13,0x00000100		; 256
	call	%r10

	.loc	333
	xjp	__L83
__L86:

	.loc	336
	ld.w	%r3,0x0
__L90:

	.loc	338
	ld.uh	%r0,%r3
	xld.w	%r10,0x000000ff		; 255
	mlt.w	%r0,%r10
	ld.w	%r12,%alr
	xld.w	%r13,0x00000007		; 7
	xcall	__divsi3
	ld.w	%r14,%r10
	ld.w	%r2,%r14

	.loc	340
	xcmp	%r0,3
	xjrugt	__L91

	.loc	341
	xld.w	%r10,0x00000055		; 85
	mlt.w	%r0,%r10
	ld.w	%r1,%alr
	xjp	__L92
__L91:

	.loc	343
	xld.w	%r1,0x000000ff		; 255
__L92:

	.loc	345
	ld.uh	%r12,%r3
	ld.ub	%r13,%r2
	ld.ub	%r14,%r14
	ld.ub	%r15,%r1
	xld.w	%r11,[%sp]
	call	%r11

	.loc	336
	xadd	%r3,%r3,1
	ld.uh	%r10,%r3
	xcmp	%r10,7
	xjrule	__L90

	.loc	347
	xjp	__L83
__L94:

	.loc	350
	ld.w	%r3,0x0
__L98:

	.loc	352
	ld.uh	%r12,%r3
	xcmp	%r12,31
	xjrugt	__L99

	.loc	353
	xld.w	%r11,0x000000ff		; 255
	mlt.w	%r12,%r11
	ld.w	%r12,%alr
	xld.w	%r13,0x0000001f		; 31
	xcall	__divsi3
	ld.w	%r1,%r10
	xjp	__L105
__L99:

	.loc	355
	xld.w	%r1,0x000000ff		; 255
__L105:
	ld.w	%r2,%r1

	.loc	357
	ld.uh	%r0,%r3
	xld.w	%r11,0x000000ff		; 255
	mlt.w	%r0,%r11
	ld.w	%r12,%alr
	xld.w	%r13,0x0000003f		; 63
	xcall	__divsi3

	.loc	359
	ld.ub	%r13,%r2
	ld.ub	%r10,%r10
	ld.ub	%r15,%r1
	ld.w	%r12,%r0
	ld.w	%r14,%r10
	xld.w	%r11,[%sp]
	call	%r11

	.loc	350
	xadd	%r3,%r3,1
	ld.uh	%r10,%r3
	xcmp	%r10,63
	xjrule	__L98
__L83:

	.loc	363
	.def	bend,	scl	110,	type	0x0,	endef
	xadd	%sp,%sp,4
	popn	%r3
	ret
	.def	end,	scl	111,	type	0x0,	endef


	.endfile

⌨️ 快捷键说明

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