📄 hal_display.ms
字号:
__LX107: ; __L107:
.loc 327
ld.w %r10,%r1
ext 0x40 ; xand %r10,%r10,0x00001000
and %r10,0x0
jreq __LX108 ; xjreq __L108
.loc 328
or %r0,0x2 ; xoor %r0,%r0,0x00000002
__LX108: ; __L108:
.loc 329
ld.w %r10,%r1
ext 0x80 ; xand %r10,%r10,0x00002000
and %r10,0x0
jreq __LX100 ; xjreq __L100
.loc 330
or %r0,0x1 ; xoor %r0,%r0,0x00000001
__LX100: ; __L100:
.loc 334
ld.w %r10,%r0
.loc 335
.def bend, scl 110, type 0x0, endef
popn %r2
ret
.def end, scl 111, type 0x0, endef
.align 1
.def CalculateSwivelViewBias, val CalculateSwivelViewBias, scl 2, type 0x2f, endef
.global CalculateSwivelViewBias
.loc 347
.def ent, scl 101, type 0x0, endef
CalculateSwivelViewBias:
; .frame %sp,36,$31 # vars= 16, regs= 5/0, args= 0, extra= 0
; .mask 0x800f0000,-4
; .fmask 0x00000000,0
pushn %r3
sub %sp,0x4 ; xsub %sp,%sp,16
ld.w [%sp+0x0],%r12 ; xld.w [%sp],%r12
.def WindowNum, val 0, scl 9, tag __T8, size 4, type 0xa, endef
.loc 348
.def begin, scl 100, type 0x0, endef
.def Bias, val 0, scl 4, type 0xf, endef
.def width, val 1, scl 4, type 0xf, endef
.def height, val 12, scl 4, type 0xf, endef
.def swivel, val 2, scl 4, type 0xf, endef
.def stride, val 4, scl 1, type 0xf, endef
.def bpp, val 8, scl 1, type 0xf, endef
.def skew, val 12, scl 1, type 0xf, endef
.def doubles, val 3, scl 4, type 0xf, endef
.loc 349
ld.w %r12,[%sp+0x0] ; xld.w %r12,[%sp]
ext GetSwivelViewMode@rm ; xcall GetSwivelViewMode
call GetSwivelViewMode@rl
ld.w %r2,%r10
.loc 350
ld.w %r12,[%sp+0x0] ; xld.w %r12,[%sp]
ext GetStride@rm ; xcall GetStride
call GetStride@rl
ld.uh %r10,%r10
ld.w [%sp+0x1],%r10 ; xld.w [%sp+4],%r10
.loc 351
ld.w %r12,[%sp+0x0] ; xld.w %r12,[%sp]
ext GetBitsPerPixel@rm ; xcall GetBitsPerPixel
call GetBitsPerPixel@rl
ld.w [%sp+0x2],%r10 ; xld.w [%sp+8],%r10
.loc 352
ld.w %r13,%r10
srl %r13,0x3 ; xsrl %r13,3
ld.w [%sp+0x3],%r13 ; xld.w [%sp+12],%r13
.loc 353
ld.w %r12,[%sp+0x0] ; xld.w %r12,[%sp]
call GetPixelDoubling ; xcall GetPixelDoubling
ld.w %r3,%r10
.loc 355
ld.w %r13,[%sp+0x0] ; xld.w %r13,[%sp]
cmp %r13,0x1 ; xcmp %r13,1
jrne __LX114 ; xjrne __L114
.loc 357
ext 0x8 ; xld.w %r12,0x00000224 ; 548
ld.w %r12,0x24
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
ld.w %r0,%r10
ext 0x8 ; xld.w %r12,0x00000220 ; 544
ld.w %r12,0x20
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
ld.uh %r1,%r0
ld.uh %r10,%r10
sub %r1,%r10
add %r1,0x1 ; xadd %r1,%r1,1
.loc 358
ext 0x8 ; xld.w %r12,0x00000226 ; 550
ld.w %r12,0x26
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
ld.w %r0,%r10
ext 0x8 ; xld.w %r12,0x00000222 ; 546
ld.w %r12,0x22
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
ld.uh %r12,%r0
ld.uh %r10,%r10
sub %r12,%r10
add %r12,0x1 ; xadd %r12,%r12,1
.loc 359
jp __LX115 ; xjp __L115
__LX114: ; __L114:
.loc 362
ext GetOutputPort@rh ; xcall GetOutputPort
ext GetOutputPort@rm
call GetOutputPort@rl
ld.w %r12,%r10
ext GetLcdHdp@rh ; xcall GetLcdHdp
ext GetLcdHdp@rm
call GetLcdHdp@rl
ld.w %r1,%r10
.loc 363
ext GetOutputPort@rh ; xcall GetOutputPort
ext GetOutputPort@rm
call GetOutputPort@rl
ld.w %r12,%r10
ext GetLcdVdp@rh ; xcall GetLcdVdp
ext GetLcdVdp@rm
call GetLcdVdp@rl
ld.w %r12,%r10
__LX115: ; __L115:
.loc 366
ext 0x1 ; xcmp %r2,90
cmp %r2,0x1a
jreq __LX123 ; xjreq __L123
jrule __LX119 ; xjrule __L119
ext 0x2 ; xcmp %r2,180
cmp %r2,0x34
jreq __LX119 ; xjreq __L119
ext 0x4 ; xcmp %r2,270
cmp %r2,0xe
jreq __LX123 ; xjreq __L123
__LX119: ; __L119:
.loc 371
ld.w %r10,%r3
and %r10,0x1 ; xand %r10,%r10,0x00000001
jreq __LX120 ; xjreq __L120
.loc 372
srl %r1,0x1 ; xsrl %r1,1
__LX120: ; __L120:
.loc 373
ld.w %r10,%r3
and %r10,0x2 ; xand %r10,%r10,0x00000002
jreq __LX116 ; xjreq __L116
.loc 374
srl %r12,0x1 ; xsrl %r12,1
.loc 375
jp __LX116 ; xjp __L116
__LX123: ; __L123:
.loc 379
ld.w %r10,%r3
and %r10,0x1 ; xand %r10,%r10,0x00000001
jreq __LX124 ; xjreq __L124
.loc 380
srl %r12,0x1 ; xsrl %r12,1
__LX124: ; __L124:
.loc 381
ld.w %r10,%r3
and %r10,0x2 ; xand %r10,%r10,0x00000002
jreq __LX116 ; xjreq __L116
.loc 382
srl %r1,0x1 ; xsrl %r1,1
__LX116: ; __L116:
.loc 387
ext 0x1 ; xcmp %r2,90
cmp %r2,0x1a
jreq __LX131 ; xjreq __L131
jrule __LX130 ; xjrule __L130
ext 0x2 ; xcmp %r2,180
cmp %r2,0x34
jreq __LX132 ; xjreq __L132
ext 0x4 ; xcmp %r2,270
cmp %r2,0xe
jreq __LX133 ; xjreq __L133
__LX130: ; __L130:
.loc 390
ld.w %r0,0x0
jp __LX128 ; xjp __L128
__LX131: ; __L131:
.loc 391
ld.w %r13,[%sp+0x2] ; xld.w %r13,[%sp+8]
mlt.w %r12,%r13
ld.w %r0,%alr
ld.w %r10,%r0
srl %r10,0x3 ; xsrl %r10,3
ld.w %r0,%r10
jp __LX145 ; xjp __L145
__LX132: ; __L132:
.loc 392
ld.w %r13,[%sp+0x2] ; xld.w %r13,[%sp+8]
mlt.w %r1,%r13
ld.w %r0,%alr
ld.w %r11,%r0
srl %r11,0x3 ; xsrl %r11,3
ext 0x1 ; xsub %r10,%r12,1
sub %r10,%r12
ld.w %r13,[%sp+0x1] ; xld.w %r13,[%sp+4]
mlt.w %r13,%r10
ld.w %r14,%alr
ld.w %r0,%r11
add %r0,%r14
__LX145: ; __L145:
ld.w %r13,[%sp+0x3] ; xld.w %r13,[%sp+12]
sub %r0,%r13
jp __LX128 ; xjp __L128
__LX133: ; __L133:
.loc 393
ext 0x1 ; xsub %r10,%r1,1
sub %r10,%r1
ld.w %r13,[%sp+0x1] ; xld.w %r13,[%sp+4]
mlt.w %r13,%r10
ld.w %r0,%alr
__LX128: ; __L128:
.loc 396
ld.w %r12,[%sp+0x0] ; xld.w %r12,[%sp]
ext GetWinMirror@rm ; xcall GetWinMirror
call GetWinMirror@rl
cmp %r10,0x0
jreq __LX136 ; xjreq __L136
.loc 398
ext 0x1 ; xcmp %r2,90
cmp %r2,0x1a
jreq __LX140 ; xjreq __L140
jrule __LX139 ; xjrule __L139
ext 0x2 ; xcmp %r2,180
cmp %r2,0x34
jreq __LX141 ; xjreq __L141
ext 0x4 ; xcmp %r2,270
cmp %r2,0xe
jreq __LX142 ; xjreq __L142
__LX139: ; __L139:
.loc 401
ld.w %r10,[%sp+0x1] ; xld.w %r10,[%sp+4]
jp __LX146 ; xjp __L146
__LX140: ; __L140:
.loc 402
ld.w %r0,0x0
jp __LX136 ; xjp __L136
__LX141: ; __L141:
.loc 403
ld.w %r10,[%sp+0x1] ; xld.w %r10,[%sp+4]
ld.w %r13,[%sp+0x3] ; xld.w %r13,[%sp+12]
sub %r10,%r13
sub %r0,%r10
jp __LX136 ; xjp __L136
__LX142: ; __L142:
.loc 404
ext GetOutputPort@rh ; xcall GetOutputPort
ext GetOutputPort@rm
call GetOutputPort@rl
ld.w %r12,%r10
ext GetLcdVdp@rh ; xcall GetLcdVdp
ext GetLcdVdp@rm
call GetLcdVdp@rl
__LX146: ; __L146:
ld.w %r13,[%sp+0x3] ; xld.w %r13,[%sp+12]
sub %r10,%r13
add %r0,%r10
__LX136: ; __L136:
.loc 408
ld.w %r10,%r0
.loc 409
.def bend, scl 110, type 0x0, endef
add %sp,0x4 ; xadd %sp,%sp,16
popn %r3
ret
.def end, scl 111, type 0x0, endef
.align 1
.def SetLcdDisplayBlank, val SetLcdDisplayBlank, scl 2, type 0x21, endef
.global SetLcdDisplayBlank
.loc 418
.def ent, scl 101, type 0x0, endef
SetLcdDisplayBlank:
; .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 419
.def begin, scl 100, type 0x0, endef
.def reg, val 10, scl 4, type 0xd, endef
ext 0x8 ; xld.w %r12,0x00000202 ; 514
ld.w %r12,0x2
ext halReadReg16@rh ; xcall halReadReg16
ext halReadReg16@rm
call halReadReg16@rl
.loc 421
ld.uh %r0,%r0
cmp %r0,0x0
jreq __LX148 ; xjreq __L148
.loc 422
ext 0x4 ; xoor %r10,%r10,0x00000100
or %r10,0x0
jp __LX149 ; xjp __L149
__LX148: ; __L148:
.loc 424
ext 0x3fb ; xand %r10,%r10,0x0000feff
and %r10,0x3f
__LX149: ; __L149:
.loc 426
ld.uh %r13,%r10
ext 0x8 ; xld.w %r12,0x00000202 ; 514
ld.w %r12,0x2
ext halWriteReg16@rh ; xcall halWriteReg16
ext halWriteReg16@rm
call halWriteReg16@rl
.loc 427
.def bend, scl 110, type 0x0, endef
popn %r0
ret
.def end, scl 111, type 0x0, endef
.align 1
.def GetLcdDisplayBlank, val GetLcdDisplayBlank, scl 2, type 0x2f, endef
.global GetLcdDisplayBlank
.loc 436
.def ent, scl 101, type 0x0, endef
Ge
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -