📄 wstlcd.s
字号:
cpi R16,1
brne L87
.dbline 29
sbi 0x15,7
rjmp L88
L87:
.dbline 30
in R24,0x15
andi R24,127
out 0x15,R24
L88:
.dbline -2
.dbline 30
L86:
.dbline 0 ; func end
ret
.dbsym r i 16 c
.dbend
.dbfunc e Delay _Delay fV
; j -> R20,R21
; i -> R16,R17
.even
_Delay::
rcall push_gset1
.dbline -1
.dbline 34
.dbline 35
rjmp L93
L90:
.dbline 36
ldi R20,5000
ldi R21,19
rjmp L97
L94:
.dbline 36
.dbline 36
.dbline 36
L95:
.dbline 36
subi R20,1
sbci R21,0
L97:
.dbline 36
cpi R20,0
cpc R20,R21
brne L94
X0:
L91:
.dbline 35
subi R16,1
sbci R17,0
L93:
.dbline 35
cpi R16,0
cpc R16,R17
brne L90
X1:
.dbline -2
.dbline 37
L89:
rcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r j 20 i
.dbsym r i 16 i
.dbend
.dbfunc e nop _nop fV
; i -> R16
.even
_nop::
.dbline -1
.dbline 40
.dbline 40
rjmp L102
L99:
.dbline 41
nop
L100:
.dbline 40
dec R16
L102:
.dbline 40
tst R16
brne L99
.dbline -2
.dbline 42
L98:
.dbline 0 ; func end
ret
.dbsym r i 16 c
.dbend
.dbfunc e DisplayOnOff _DisplayOnOff fV
; j -> <dead>
; i -> R20
.even
_DisplayOnOff::
rcall push_gset1
mov R20,R16
.dbline -1
.dbline 47
.dbline 48
clr R16
rcall _Set_RW
.dbline 49
clr R16
rcall _Set_DI
.dbline 50
clr R16
rcall _Set_EN
.dbline 51
mov R24,R20
subi R24,194 ; addi 62
out 0x1b,R24
.dbline 52
ldi R16,10
rcall _nop
.dbline 53
ldi R16,1
rcall _Set_EN
.dbline 54
ldi R16,10
rcall _nop
.dbline 55
ldi R16,10
rcall _nop
.dbline 56
clr R16
rcall _Set_EN
.dbline -2
.dbline 58
L103:
rcall pop_gset1
.dbline 0 ; func end
ret
.dbsym l j 1 c
.dbsym r i 20 c
.dbend
.dbfunc e SetStartLine _SetStartLine fV
; i -> R20
.even
_SetStartLine::
rcall push_gset1
mov R20,R16
.dbline -1
.dbline 62
.dbline 62
clr R16
rcall _Set_RW
.dbline 63
clr R16
rcall _Set_DI
.dbline 64
clr R16
rcall _Set_EN
.dbline 65
mov R24,R20
subi R24,64 ; addi 192
out 0x1b,R24
.dbline 66
ldi R16,10
rcall _nop
.dbline 67
ldi R16,1
rcall _Set_EN
.dbline 68
ldi R16,10
rcall _nop
.dbline 69
ldi R16,10
rcall _nop
.dbline 70
clr R16
rcall _Set_EN
.dbline -2
.dbline 72
L104:
rcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbend
.dbfunc e SetX _SetX fV
; i -> R20
.even
_SetX::
rcall push_gset1
mov R20,R16
.dbline -1
.dbline 76
.dbline 76
clr R16
rcall _Set_RW
.dbline 77
clr R16
rcall _Set_DI
.dbline 78
clr R16
rcall _Set_EN
.dbline 79
mov R24,R20
subi R24,72 ; addi 184
out 0x1b,R24
.dbline 80
ldi R16,10
rcall _nop
.dbline 81
ldi R16,1
rcall _Set_EN
.dbline 82
ldi R16,100
rcall _nop
.dbline 83
ldi R16,100
rcall _nop
.dbline 84
clr R16
rcall _Set_EN
.dbline -2
.dbline 86
L105:
rcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbend
.dbfunc e SetY _SetY fV
; i -> R20
.even
_SetY::
rcall push_gset1
mov R20,R16
.dbline -1
.dbline 90
.dbline 90
clr R16
rcall _Set_RW
.dbline 91
clr R16
rcall _Set_DI
.dbline 92
clr R16
rcall _Set_EN
.dbline 93
mov R24,R20
subi R24,192 ; addi 64
out 0x1b,R24
.dbline 94
ldi R16,10
rcall _nop
.dbline 95
ldi R16,1
rcall _Set_EN
.dbline 96
ldi R16,10
rcall _nop
.dbline 97
ldi R16,10
rcall _nop
.dbline 98
clr R16
rcall _Set_EN
.dbline -2
.dbline 100
L106:
rcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbend
.dbfunc e WriteByte _WriteByte fV
; i -> R20
.even
_WriteByte::
rcall push_gset1
mov R20,R16
.dbline -1
.dbline 116
.dbline 116
clr R16
rcall _Set_RW
.dbline 117
ldi R16,1
rcall _Set_DI
.dbline 118
clr R16
rcall _Set_EN
.dbline 119
out 0x1b,R20
.dbline 120
ldi R16,10
rcall _nop
.dbline 121
ldi R16,1
rcall _Set_EN
.dbline 122
ldi R16,10
rcall _nop
.dbline 123
ldi R16,10
rcall _nop
.dbline 124
clr R16
rcall _Set_EN
.dbline -2
.dbline 126
L107:
rcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbend
.dbfunc e Reset _Reset fV
.even
_Reset::
.dbline -1
.dbline 140
.dbline 140
clr R16
rcall _Set_RST
.dbline 141
ldi R16,1
ldi R17,0
rcall _Delay
.dbline 142
ldi R16,1
.dbline -2
.dbline 144
L108:
.dbline 0 ; func end
rjmp _Set_RST
.dbend
.dbfunc e ClearScreen _ClearScreen fV
; i -> R20
; j -> R22
; k -> R22
.even
_ClearScreen::
rcall push_gset2
mov R22,R16
.dbline -1
.dbline 148
.dbline 149
ldi R16,1
rcall _Set_CS1
.dbline 150
ldi R16,1
rcall _Set_CS2
.dbline 151
mov R20,R22
rjmp L113
L110:
.dbline 152
.dbline 152
mov R16,R20
rcall _SetX
.dbline 153
clr R22
rjmp L117
L114:
.dbline 154
clr R16
rcall _WriteByte
L115:
.dbline 153
inc R22
L117:
.dbline 153
cpi R22,64
brlo L114
.dbline 155
L111:
.dbline 151
inc R20
L113:
.dbline 151
cpi R20,8
brlo L110
.dbline -2
.dbline 156
L109:
rcall pop_gset2
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbsym r j 22 c
.dbsym r k 22 c
.dbend
.dbfunc e InitLCD _InitLCD fV
.even
_InitLCD::
.dbline -1
.dbline 160
.dbline 160
rcall _Reset
.dbline 161
clr R16
clr R17
rcall _Delay
.dbline 162
clr R16
rcall _ClearScreen
.dbline 163
ldi R16,1
rcall _DisplayOnOff
.dbline 164
clr R16
.dbline -2
.dbline 165
L118:
.dbline 0 ; func end
rjmp _SetStartLine
.dbend
.dbfunc e WriteWord _WriteWord fV
; i -> R20
; cs -> y+10
; y -> R10
; x -> R12
; disp -> R22,R23
.even
_WriteWord::
rcall push_gset4
mov R12,R18
mov R22,R16
mov R23,R17
ldd R10,y+8
.dbline -1
.dbline 168
.dbline 169
ldd R24,y+10
cpi R24,1
brne L120
.dbline 169
.dbline 169
ldi R16,1
rcall _Set_CS1
.dbline 169
clr R16
rcall _Set_CS2
.dbline 169
rjmp L121
L120:
.dbline 170
.dbline 170
clr R16
rcall _Set_CS1
.dbline 170
ldi R16,1
rcall _Set_CS2
.dbline 170
L121:
.dbline 171
mov R16,R12
rcall _SetX
.dbline 172
mov R16,R10
rcall _SetY
.dbline 173
clr R20
rjmp L125
L122:
.dbline 174
.dbline 174
mov R30,R22
mov R31,R23
lpm
mov R16,R0
rcall _WriteByte
.dbline 175
subi R22,255 ; offset = 1
sbci R23,255
.dbline 175
L123:
.dbline 173
inc R20
L125:
.dbline 173
cpi R20,16
brlo L122
.dbline 176
mov R16,R12
subi R16,255 ; addi 1
rcall _SetX
.dbline 177
mov R16,R10
rcall _SetY
.dbline 178
clr R20
rjmp L129
L126:
.dbline 179
.dbline 179
mov R30,R22
mov R31,R23
lpm
mov R16,R0
rcall _WriteByte
.dbline 180
subi R22,255 ; offset = 1
sbci R23,255
.dbline 180
L127:
.dbline 178
inc R20
L129:
.dbline 178
cpi R20,16
brlo L126
.dbline -2
.dbline 181
L119:
rcall pop_gset4
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbsym l cs 10 c
.dbsym r y 10 c
.dbsym r x 12 c
.dbsym r disp 22 pkc
.dbend
.dbfunc e WriteCharacter _WriteCharacter fV
; i -> R20
; cs -> y+10
; y -> R10
; x -> R12
; disp -> R22,R23
.even
_WriteCharacter::
rcall push_gset4
mov R12,R18
mov R22,R16
mov R23,R17
ldd R10,y+8
.dbline -1
.dbline 185
.dbline 186
ldd R24,y+10
cpi R24,1
brne L131
.dbline 186
ldi R16,1
rcall _Set_CS1
rjmp L132
L131:
.dbline 187
ldi R16,1
rcall _Set_CS2
L132:
.dbline 188
mov R16,R12
rcall _SetX
.dbline 189
mov R16,R10
rcall _SetY
.dbline 190
clr R20
rjmp L136
L133:
.dbline 191
.dbline 191
mov R30,R22
mov R31,R23
lpm
mov R16,R0
rcall _WriteByte
.dbline 192
subi R22,255 ; offset = 1
sbci R23,255
.dbline 192
L134:
.dbline 190
inc R20
L136:
.dbline 190
cpi R20,8
brlo L133
.dbline 193
mov R16,R12
subi R16,255 ; addi 1
rcall _SetX
.dbline 194
mov R16,R10
rcall _SetY
.dbline 195
clr R20
rjmp L140
L137:
.dbline 196
.dbline 196
mov R30,R22
mov R31,R23
lpm
mov R16,R0
rcall _WriteByte
.dbline 197
subi R22,255 ; offset = 1
sbci R23,255
.dbline 197
L138:
.dbline 195
inc R20
L140:
.dbline 195
cpi R20,8
brlo L137
.dbline -2
.dbline 198
L130:
rcall pop_gset4
.dbline 0 ; func end
ret
.dbsym r i 20 c
.dbsym l cs 10 c
.dbsym r y 10 c
.dbsym r x 12 c
.dbsym r disp 22 pkc
.dbend
.dbfunc e WritePIC _WritePIC fV
; jj -> R10
; ii -> R22
; kk -> R10
; disp -> R20,R21
.even
_WritePIC::
rcall push_gset3
mov R20,R16
mov R21,R17
.dbline -1
.dbline 219
.dbline 219
clr R22
.dbline 220
clr R10
.dbline 221
.dbline 222
clr R16
rcall _SetX
.dbline 223
clr R16
rcall _SetY
.dbline 224
rjmp L145
L142:
.dbline 225
.dbline 225
clr R10
rjmp L149
L146:
.dbline 226
.dbline 226
clr R16
rcall _Set_CS1
.dbline 227
ldi R16,1
rcall _Set_CS2
.dbline 228
mov R16,R22
rcall _SetX
.dbline 229
mov R16,R10
rcall _SetY
.dbline 230
mov R30,R20
mov R31,R21
lpm
mov R16,R0
rcall _WriteByte
.dbline 231
subi R20,255 ; offset = 1
sbci R21,255
.dbline 231
L147:
.dbline 225
inc R10
L149:
.dbline 225
mov R24,R10
cpi R24,64
brlo L146
.dbline 232
clr R10
rjmp L153
L150:
.dbline 233
.dbline 233
ldi R16,1
rcall _Set_CS1
.dbline 234
clr R16
rcall _Set_CS2
.dbline 235
mov R16,R22
rcall _SetX
.dbline 236
mov R16,R10
rcall _SetY
.dbline 237
mov R30,R20
mov R31,R21
lpm
mov R16,R0
rcall _WriteByte
.dbline 238
subi R20,255 ; offset = 1
sbci R21,255
.dbline 238
L151:
.dbline 232
inc R10
L153:
.dbline 232
mov R24,R10
cpi R24,64
brlo L150
.dbline 238
L143:
.dbline 224
inc R22
L145:
.dbline 224
cpi R22,8
brsh X2
rjmp L142
X2:
.dbline -2
.dbline 239
;
;
;
;
;
L141:
rcall pop_gset3
.dbline 0 ; func end
ret
.dbsym r jj 10 c
.dbsym r ii 22 c
.dbsym r kk 10 c
.dbsym r disp 20 pkc
.dbend
.dbfile C:\DOCUME~1\Administrator\桌面\张军\PS2-ICC\WSTLCD.C
.dbfunc e main _main fV
; i -> <dead>
.even
_main::
.dbline -1
.dbline 11
.dbline 12
ldi R24,255
out 0x1a,R24
.dbline 13
out 0x1b,R24
.dbline 14
out 0x17,R24
.dbline 15
out 0x18,R24
.dbline 16
out 0x14,R24
.dbline 17
out 0x15,R24
.dbline 18
rcall _InitLCD
.dbline 19
clr R16
rcall _ClearScreen
.dbline 20
clr R16
rcall _Set_CS1
rjmp L156
L155:
.dbline 22
ldi R16,<_Hello
ldi R17,>_Hello
rcall _WritePIC
L156:
.dbline 21
rjmp L155
X3:
.dbline -2
.dbline 24
L154:
.dbline 0 ; func end
ret
.dbsym l i 1 c
.dbend
.area bss(ram, con, rel)
.dbfile C:\DOCUME~1\Administrator\桌面\张军\PS2-ICC\WSTLCD.C
_F_Flag::
.blkb 1
.dbfile C:\DOCUME~1\Administrator\桌面\张军\PS2-ICC/RTC.h
.dbsym e F_Flag _F_Flag c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -