📄 hal_lcd.ms
字号:
ld.w %r9,__L80+0x0@l
add %r9,%r10
ld.w %r10,[%r9]
jp %r10
.code
.align 2
__L80:
.word __L74
.word __L75
.word __L76
.word __L77
.word __L78
.code
.loc 303
__L74:
ld.w %r10,0x9 ; xld.w %r10,0x00000009 ; 9
jp __LX81 ; xjp __L81
__L75:
.loc 304
ld.w %r10,0xc ; xld.w %r10,0x0000000c ; 12
jp __LX81 ; xjp __L81
__L76:
.loc 305
ld.w %r10,0x10 ; xld.w %r10,0x00000010 ; 16
jp __LX81 ; xjp __L81
__L77:
.loc 306
ld.w %r10,0x12 ; xld.w %r10,0x00000012 ; 18
jp __LX81 ; xjp __L81
__L78:
.loc 307
ld.w %r10,0x18 ; xld.w %r10,0x00000018 ; 24
jp __LX81 ; xjp __L81
__LX79: ; __L79:
.loc 308
ext 0x3ff ; xld.w %r10,0x0000ffff ; 65535
ld.w %r10,0x3f
__LX81: ; __L81:
.loc 310
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetRGBPanelClkPol, val SetRGBPanelClkPol, scl 2, type 0x21, endef
.global SetRGBPanelClkPol
.loc 320
.def ent, scl 101, type 0x0, endef
SetRGBPanelClkPol:
; .frame %sp,8,$31 # vars= 0, regs= 2/0, args= 0, extra= 0
; .mask 0x80010000,-4
; .fmask 0x00000000,0
pushn %r0
ld.w %r0,%r12
.def mode, val 0, scl 17, type 0xd, endef
.loc 321
.def begin, scl 100, type 0x0, endef
.def reg, val 10, scl 4, type 0xd, endef
ext 0x0 ; xld.w %r12,0x00000032 ; 50
ld.w %r12,0x32
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
.loc 322
ld.uh %r0,%r0
cmp %r0,0x0
jreq __LX83 ; xjreq __L83
.loc 323
ld.w %r13,%r10
ext 0x2 ; xoor %r13,%r13,0x00000080
or %r13,0x0
ld.uh %r13,%r13
ext 0x0 ; xld.w %r12,0x00000032 ; 50
ld.w %r12,0x32
jp __LX85 ; xjp __L85
__LX83: ; __L83:
.loc 325
ext 0x0 ; xld.w %r12,0x00000032 ; 50
ld.w %r12,0x32
ld.w %r13,%r10
ext 0x3fd ; xand %r13,%r13,0x0000ff7f
and %r13,0x3f
__LX85: ; __L85:
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 327
.def bend, scl 110, type 0x0, endef
popn %r0
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetRGBPanelType, val SetRGBPanelType, scl 2, type 0x21, endef
.global SetRGBPanelType
.loc 336
.def ent, scl 101, type 0x0, endef
SetRGBPanelType:
; .frame %sp,8,$31 # vars= 0, regs= 2/0, args= 0, extra= 0
; .mask 0x80010000,-4
; .fmask 0x00000000,0
pushn %r0
ld.w %r0,%r12
.def type, val 12, scl 17, type 0xd, endef
.loc 337
.def begin, scl 100, type 0x0, endef
.def reg, val 10, scl 4, type 0xd, endef
ext 0x0 ; xld.w %r12,0x00000032 ; 50
ld.w %r12,0x32
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
ext 0xf ; xand %r10,%r10,0x000003ff
and %r10,0x3f
.loc 338
sll %r0,0x8 ; xsll %r0,10
sll %r0,0x2
or %r10,%r0
.loc 339
ld.uh %r10,%r10
ext 0x0 ; xld.w %r12,0x00000032 ; 50
ld.w %r12,0x32
ld.w %r13,%r10
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 340
.def bend, scl 110, type 0x0, endef
popn %r0
ret
.def end, scl 111, type 0x0, endef
.align 1
.def GetRGBPanelType, val GetRGBPanelType, scl 2, type 0x2d, endef
.global GetRGBPanelType
.loc 349
.def ent, scl 101, type 0x0, endef
GetRGBPanelType:
; .frame %sp,4,$31 # vars= 0, regs= 1/0, args= 0, extra= 0
; .mask 0x80000000,-4
; .fmask 0x00000000,0
.loc 350
ext 0x0 ; xld.w %r12,0x00000032 ; 50
ld.w %r12,0x32
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
ld.uh %r10,%r10
srl %r10,0x8 ; xsrl %r10,10
srl %r10,0x2
.loc 351
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetLcdHVTotal, val SetLcdHVTotal, scl 2, type 0x21, endef
.global SetLcdHVTotal
.loc 361
.def ent, scl 101, type 0x0, endef
SetLcdHVTotal:
; .frame %sp,8,$31 # vars= 0, regs= 2/0, args= 0, extra= 0
; .mask 0x80010000,-4
; .fmask 0x00000000,0
pushn %r0
.def HorizTotal, val 12, scl 17, type 0xd, endef
.def VertTotal, val 0, scl 17, type 0xd, endef
.loc 362
ld.uh %r10,%r12
srl %r10,0x3 ; xsrl %r10,3
sub %r10,0x1 ; xsub %r10,%r10,1
.loc 363
ext 0x1 ; xsub %r0,%r13,1
sub %r0,%r13
ext 0xf ; xand %r0,%r0,0x000003ff
and %r0,0x3f
.loc 365
ext 0x1 ; xld.w %r12,0x00000040 ; 64
ld.w %r12,0x0
ld.w %r13,%r10
ext 0x1 ; xand %r13,%r13,0x0000007f
and %r13,0x3f
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 366
ld.uh %r0,%r0
ext 0x1 ; xld.w %r12,0x0000004a ; 74
ld.w %r12,0xa
ld.w %r13,%r0
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 367
popn %r0
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetLcdHVStartPos, val SetLcdHVStartPos, scl 2, type 0x21, endef
.global SetLcdHVStartPos
.loc 376
.def ent, scl 101, type 0x0, endef
SetLcdHVStartPos:
; .frame %sp,8,$31 # vars= 0, regs= 2/0, args= 0, extra= 0
; .mask 0x80010000,-4
; .fmask 0x00000000,0
pushn %r0
ld.w %r0,%r13
.def HPos, val 12, scl 17, type 0xd, endef
.def VPos, val 0, scl 17, type 0xd, endef
.loc 377
ld.uh %r13,%r12
ext 0x1 ; xld.w %r12,0x00000044 ; 68
ld.w %r12,0x4
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 378
ld.uh %r0,%r0
ext 0x1 ; xld.w %r12,0x0000004e ; 78
ld.w %r12,0xe
ld.w %r13,%r0
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 379
popn %r0
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetLcdFpline, val SetLcdFpline, scl 2, type 0x21, endef
.global SetLcdFpline
.loc 390
.def ent, scl 101, type 0x0, endef
SetLcdFpline:
; .frame %sp,8,$31 # vars= 0, regs= 2/0, args= 0, extra= 0
; .mask 0x80010000,-4
; .fmask 0x00000000,0
pushn %r0
ld.w %r0,%r14
.def FpLinePol, val 12, scl 17, type 0xd, endef
.def FpLineWidth, val 13, scl 17, type 0xd, endef
.def FpLinePos, val 14, scl 17, type 0xd, endef
.loc 391
.def begin, scl 100, type 0x0, endef
.def reg, val 10, scl 4, type 0xd, endef
.loc 393
ld.w %r10,%r12
sll %r10,0x7 ; xsll %r10,7
ext 0x2 ; xand %r10,%r10,0x00000080
and %r10,0x0
sub %r13,0x1 ; xsub %r13,%r13,1
or %r10,%r13
.loc 394
ld.uh %r10,%r10
ext 0x1 ; xld.w %r12,0x00000046 ; 70
ld.w %r12,0x6
ld.w %r13,%r10
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 395
sub %r0,0x1 ; xsub %r0,%r0,1
ld.uh %r0,%r0
ext 0x1 ; xld.w %r12,0x00000048 ; 72
ld.w %r12,0x8
ld.w %r13,%r0
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 396
.def bend, scl 110, type 0x0, endef
popn %r0
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetLcdFPFrame, val SetLcdFPFrame, scl 2, type 0x21, endef
.global SetLcdFPFrame
.loc 408
.def ent, scl 101, type 0x0, endef
SetLcdFPFrame:
; .frame %sp,8,$31 # vars= 0, regs= 2/0, args= 0, extra= 0
; .mask 0x80010000,-4
; .fmask 0x00000000,0
pushn %r0
ld.w %r0,%r14
.def FPFramePol, val 12, scl 17, type 0xd, endef
.def FPFrameWidth, val 13, scl 17, type 0xd, endef
.def FPFramePos, val 0, scl 17, type 0xd, endef
.loc 409
.def begin, scl 100, type 0x0, endef
.def reg, val 10, scl 4, type 0xd, endef
.loc 411
ld.w %r10,%r12
sll %r10,0x7 ; xsll %r10,7
ext 0x2 ; xand %r10,%r10,0x00000080
and %r10,0x0
sub %r13,0x1 ; xsub %r13,%r13,1
or %r10,%r13
.loc 412
ld.uh %r10,%r10
ext 0x1 ; xld.w %r12,0x00000050 ; 80
ld.w %r12,0x10
ld.w %r13,%r10
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 413
ld.uh %r0,%r0
ext 0x1 ; xld.w %r12,0x00000052 ; 82
ld.w %r12,0x12
ld.w %r13,%r0
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 414
.def bend, scl 110, type 0x0, endef
popn %r0
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetLcdParallelIf, val SetLcdParallelIf, scl 2, type 0x21, endef
.global SetLcdParallelIf
.loc 427
.def ent, scl 101, type 0x0, endef
SetLcdParallelIf:
; .frame %sp,4,$31 # vars= 0, regs= 1/0, args= 0, extra= 0
; .mask 0x80000000,-4
; .fmask 0x00000000,0
.def LcdNum, val 12, scl 17, tag __T15, size 4, type 0xa, endef
.def mode, val 13, scl 17, type 0xd, endef
.loc 428
cmp %r12,0x0
jreq __LX95 ; xjreq __L95
cmp %r12,0x1 ; xcmp %r12,1
jreq __LX96 ; xjreq __L96
__LX95: ; __L95:
.loc 432
ld.uh %r13,%r13
ext 0x1 ; xld.w %r12,0x00000056 ; 86
ld
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -