📄 main.lis
字号:
01F2 .dbfunc e LCD_PutStr _LCD_PutStr fV
01F2 ; puts -> R20,R21
01F2 ; col -> R22
01F2 ; row -> R10
.even
01F2 _LCD_PutStr::
01F2 0E940000 xcall push_gset3
01F6 622F mov R22,R18
01F8 A02E mov R10,R16
01FA 4E81 ldd R20,y+6
01FC 5F81 ldd R21,y+7
01FE .dbline -1
01FE .dbline 198
01FE ; }
01FE ; }
01FE ; }
01FE ; }
01FE ; }
01FE ; }
01FE .dbline 199
01FE ; }
01FE 00E3 ldi R16,48
0200 6BDF xcall _LCD_WriteCmd
0202 .dbline 200
0202 ; }
0202 88E0 ldi R24,8
0204 8A9D mul R24,R10
0206 F001 movw R30,R0
0208 262E mov R2,R22
020A 3324 clr R3
020C E20D add R30,R2
020E F31D adc R31,R3
0210 80E0 ldi R24,<_AC_TABLE
0212 90E0 ldi R25,>_AC_TABLE
0214 E80F add R30,R24
0216 F91F adc R31,R25
0218 0491 lpm R16,Z
021A 5EDF xcall _LCD_WriteCmd
021C 23C0 xjmp L53
021E L52:
021E .dbline 202
021E ; }
021E ; }
021E .dbline 203
021E ; }
021E 6830 cpi R22,8
0220 11F4 brne L55
0222 .dbline 204
0222 ; }
0222 .dbline 205
0222 ; }
0222 6627 clr R22
0224 .dbline 206
0224 ; }
0224 A394 inc R10
0226 .dbline 207
0226 ; }
0226 L55:
0226 .dbline 208
0226 ; }
0226 8A2D mov R24,R10
0228 8430 cpi R24,4
022A 09F4 brne L57
022C .dbline 208
022C AA24 clr R10
022E L57:
022E .dbline 209
022E ; }
022E 88E0 ldi R24,8
0230 8A9D mul R24,R10
0232 F001 movw R30,R0
0234 262E mov R2,R22
0236 3324 clr R3
0238 E20D add R30,R2
023A F31D adc R31,R3
023C 80E0 ldi R24,<_AC_TABLE
023E 90E0 ldi R25,>_AC_TABLE
0240 E80F add R30,R24
0242 F91F adc R31,R25
0244 0491 lpm R16,Z
0246 48DF xcall _LCD_WriteCmd
0248 .dbline 210
0248 ; }
0248 FA01 movw R30,R20
024A 0081 ldd R16,z+0
024C 60DF xcall _LCD_WriteData
024E .dbline 211
024E ; }
024E 4F5F subi R20,255 ; offset = 1
0250 5F4F sbci R21,255
0252 .dbline 212
0252 ; }
0252 FA01 movw R30,R20
0254 2080 ldd R2,z+0
0256 2220 tst R2
0258 51F0 breq L54
025A .dbline 213
025A ; }
025A .dbline 214
025A ; }
025A 0081 ldd R16,z+0
025C 58DF xcall _LCD_WriteData
025E .dbline 215
025E ; }
025E 4F5F subi R20,255 ; offset = 1
0260 5F4F sbci R21,255
0262 .dbline 216
0262 ; }
0262 .dbline 216
0262 .dbline 216
0262 L60:
0262 .dbline 217
0262 6395 inc R22
0264 .dbline 218
0264 L53:
0264 .dbline 201
0264 FA01 movw R30,R20
0266 2080 ldd R2,z+0
0268 2220 tst R2
026A 09F0 breq X1
026C D8CF xjmp L52
026E X1:
026E L54:
026E .dbline -2
026E L51:
026E 0E940000 xcall pop_gset3
0272 .dbline 0 ; func end
0272 0895 ret
0274 .dbsym r puts 20 pc
0274 .dbsym r col 22 c
0274 .dbsym r row 10 c
0274 .dbend
0274 .dbfunc e LCD_PutBMP _LCD_PutBMP fV
0274 ; i -> R20
0274 ; x -> R22,R23
0274 ; j -> R12
0274 ; puts -> R10,R11
.even
0274 _LCD_PutBMP::
0274 0E940000 xcall push_gset4
0278 5801 movw R10,R16
027A .dbline -1
027A .dbline 222
027A ; }
027A ; }
027A ; }
027A ; }
027A ; }
027A ; }
027A .dbline 223
027A ; }
027A 6627 clr R22
027C 7727 clr R23
027E .dbline 225
027E ; }
027E ; }
027E 04E3 ldi R16,52
0280 2BDF xcall _LCD_WriteCmd
0282 .dbline 226
0282 ; }
0282 06E3 ldi R16,54
0284 29DF xcall _LCD_WriteCmd
0286 .dbline 227
0286 ; }
0286 4427 clr R20
0288 13C0 xjmp L65
028A L62:
028A .dbline 228
028A ; }
028A .dbline 229
028A ; }
028A 042F mov R16,R20
028C 0068 ori R16,128
028E 24DF xcall _LCD_WriteCmd
0290 .dbline 230
0290 ; }
0290 00E8 ldi R16,128
0292 22DF xcall _LCD_WriteCmd
0294 .dbline 231
0294 ; }
0294 CC24 clr R12
0296 08C0 xjmp L69
0298 L66:
0298 .dbline 232
0298 .dbline 233
0298 FB01 movw R30,R22
029A EA0D add R30,R10
029C FB1D adc R31,R11
029E 0491 lpm R16,Z
02A0 36DF xcall _LCD_WriteData
02A2 .dbline 234
02A2 6F5F subi R22,255 ; offset = 1
02A4 7F4F sbci R23,255
02A6 .dbline 235
02A6 L67:
02A6 .dbline 231
02A6 C394 inc R12
02A8 L69:
02A8 .dbline 231
02A8 8C2D mov R24,R12
02AA 8032 cpi R24,32
02AC A8F3 brlo L66
02AE .dbline 236
02AE L63:
02AE .dbline 227
02AE 4395 inc R20
02B0 L65:
02B0 .dbline 227
02B0 4032 cpi R20,32
02B2 58F3 brlo L62
02B4 .dbline -2
02B4 L61:
02B4 0E940000 xcall pop_gset4
02B8 .dbline 0 ; func end
02B8 0895 ret
02BA .dbsym r i 20 c
02BA .dbsym r x 22 i
02BA .dbsym r j 12 c
02BA .dbsym r puts 10 pkc
02BA .dbend
02BA .dbfunc e Disp_Img _Disp_Img fV
02BA ; i -> R20
02BA ; y -> R12
02BA ; j -> R10,R11
02BA ; x -> R14
02BA ; img -> R22,R23
.even
02BA _Disp_Img::
02BA 0E940000 xcall push_gset5
02BE B801 movw R22,R16
02C0 .dbline -1
02C0 .dbline 241
02C0 ;
02C0 ;
02C0 ;
02C0 ;
02C0 ;
02C0 ;
02C0 ;
02C0 ;
02C0 ;
02C0 ;
02C0 .dbline 241
02C0 AA24 clr R10
02C2 BB24 clr R11
02C4 .dbline 243
02C4 ;
02C4 ;
02C4 4427 clr R20
02C6 2BC0 xjmp L74
02C8 L71:
02C8 .dbline 244
02C8 ;
02C8 CC24 clr R12
02CA 24C0 xjmp L78
02CC L75:
02CC .dbline 245
02CC ;
02CC EE24 clr R14
02CE 1EC0 xjmp L82
02D0 L79:
02D0 .dbline 246
02D0 .dbline 246
02D0 06E3 ldi R16,54
02D2 02DF xcall _LCD_WriteCmd
02D4 .dbline 247
02D4 0C2D mov R16,R12
02D6 0058 subi R16,128 ; addi 128
02D8 FFDE xcall _LCD_WriteCmd
02DA .dbline 248
02DA 0E2D mov R16,R14
02DC 0058 subi R16,128 ; addi 128
02DE 040F add R16,R20
02E0 FBDE xcall _LCD_WriteCmd
02E2 .dbline 249
02E2 00E3 ldi R16,48
02E4 F9DE xcall _LCD_WriteCmd
02E6 .dbline 250
02E6 1501 movw R2,R10
02E8 C101 movw R24,R2
02EA 0196 adiw R24,1
02EC 5C01 movw R10,R24
02EE F101 movw R30,R2
02F0 E60F add R30,R22
02F2 F71F adc R31,R23
02F4 0491 lpm R16,Z
02F6 0BDF xcall _LCD_WriteData
02F8 .dbline 251
02F8 1501 movw R2,R10
02FA C101 movw R24,R2
02FC 0196 adiw R24,1
02FE 5C01 movw R10,R24
0300 F101 movw R30,R2
0302 E60F add R30,R22
0304 F71F adc R31,R23
0306 0491 lpm R16,Z
0308 02DF xcall _LCD_WriteData
030A .dbline 252
030A L80:
030A .dbline 245
030A E394 inc R14
030C L82:
030C .dbline 245
030C 8E2D mov R24,R14
030E 8830 cpi R24,8
0310 F8F2 brlo L79
0312 L76:
0312 .dbline 244
0312 C394 inc R12
0314 L78:
0314 .dbline 244
0314 8C2D mov R24,R12
0316 8032 cpi R24,32
0318 08F4 brsh X2
031A D8CF xjmp L75
031C X2:
031C L72:
031C .dbline 243
031C 485F subi R20,248 ; addi 8
031E L74:
031E .dbline 243
031E 4930 cpi R20,9
0320 08F4 brsh X3
0322 D2CF xjmp L71
0324 X3:
0324 .dbline -2
0324 L70:
0324 0E940000 xcall pop_gset5
0328 .dbline 0 ; func end
0328 0895 ret
032A .dbsym r i 20 c
032A .dbsym r y 12 c
032A .dbsym r j 10 i
032A .dbsym r x 14 c
032A .dbsym r img 22 pkc
032A .dbend
032A .dbfunc e DisplayDots _DisplayDots fV
032A ; i -> R20
032A ; j -> R10
032A ; DotByte -> R22
.even
032A _DisplayDots::
032A 0E940000 xcall push_gset3
032E 602F mov R22,R16
0330 .dbline -1
0330 .dbline 260
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 ;
0330 .dbline 262
0330 ;
0330 ;
0330 04E3 ldi R16,52
0332 D2DE xcall _LCD_WriteCmd
0334 .dbline 263
0334 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -