📄 main.lis
字号:
0120 ; DatCmd -> R22
.even
0120 _SendByte::
0120 0E940000 xcall push_gset2
0124 422F mov R20,R18
0126 602F mov R22,R16
0128 .dbline -1
0128 .dbline 31
0128 .dbline 32
0128 E9DF xcall _CheckBusy
012A .dbline 35
012A 6623 tst R22
012C 11F4 brne L42
012E .dbline 36
012E C098 cbi 0x18,0
0130 01C0 xjmp L43
0132 L42:
0132 .dbline 38
0132 C09A sbi 0x18,0
0134 L43:
0134 .dbline 39
0134 C198 cbi 0x18,1
0136 .dbline 48
0136 ; }
0136 ; }
0136 ; }
0136 ; }
0136 ; }
0136 C29A sbi 0x18,2
0138 .dbline 49
0138 ; }
0138 42BB out 0x12,R20
013A .dbline 50
013A ; }
013A C298 cbi 0x18,2
013C .dbline -2
013C L41:
013C 0E940000 xcall pop_gset2
0140 .dbline 0 ; func end
0140 0895 ret
0142 .dbsym r dByte 20 c
0142 .dbsym r DatCmd 22 c
0142 .dbend
0142 .dbfunc e SendStr _SendStr fV
0142 ; ptString -> R20,R21
.even
0142 _SendStr::
0142 0E940000 xcall push_gset1
0146 A801 movw R20,R16
0148 .dbline -1
0148 .dbline 56
0148 ; }
0148 ; }
0148 ; }
0148 ; }
0148 ; }
0148 ; }
0148 05C0 xjmp L46
014A L45:
014A .dbline 58
014A .dbline 59
014A FA01 movw R30,R20
014C 2191 ld R18,Z+
014E AF01 movw R20,R30
0150 01E0 ldi R16,1
0152 E6DF xcall _SendByte
0154 .dbline 60
0154 L46:
0154 .dbline 57
0154 ; }
0154 FA01 movw R30,R20
0156 2080 ldd R2,z+0
0158 2220 tst R2
015A B9F7 brne L45
015C .dbline -2
015C L44:
015C 0E940000 xcall pop_gset1
0160 .dbline 0 ; func end
0160 0895 ret
0162 .dbsym r ptString 20 pc
0162 .dbend
0162 .dbfunc e SendNbr _SendNbr fV
0162 ; temp -> R20,R21
0162 ; Number -> R20
.even
0162 _SendNbr::
0162 0E940000 xcall push_gset1
0166 402F mov R20,R16
0168 .dbline -1
0168 .dbline 65
0168 ; }
0168 ; }
0168 ; }
0168 ; }
0168 ; }
0168 ; }
0168 ; }
0168 ; }
0168 .dbline 67
0168 ; }
0168 ; }
0168 042F mov R16,R20
016A A2DF xcall _NumberToChar
016C A801 movw R20,R16
016E .dbline 68
016E ; }
016E FA01 movw R30,R20
0170 2191 ld R18,Z+
0172 AF01 movw R20,R30
0174 01E0 ldi R16,1
0176 D4DF xcall _SendByte
0178 .dbline 69
0178 ; }
0178 FA01 movw R30,R20
017A 2191 ld R18,Z+
017C AF01 movw R20,R30
017E 01E0 ldi R16,1
0180 CFDF xcall _SendByte
0182 .dbline 70
0182 ; }
0182 FA01 movw R30,R20
0184 2081 ldd R18,z+0
0186 01E0 ldi R16,1
0188 CBDF xcall _SendByte
018A .dbline -2
018A L48:
018A 0E940000 xcall pop_gset1
018E .dbline 0 ; func end
018E 0895 ret
0190 .dbsym r temp 20 pc
0190 .dbsym r Number 20 c
0190 .dbend
0190 .dbfunc e Move _Move fV
0190 ; dir -> R20
.even
0190 _Move::
0190 0E940000 xcall push_gset1
0194 402F mov R20,R16
0196 .dbline -1
0196 .dbline 74
0196 ; }
0196 ; }
0196 ; }
0196 ; }
0196 .dbline 75
0196 ; }
0196 242F mov R18,R20
0198 0027 clr R16
019A C2DF xcall _SendByte
019C .dbline -2
019C L49:
019C 0E940000 xcall pop_gset1
01A0 .dbline 0 ; func end
01A0 0895 ret
01A2 .dbsym r dir 20 c
01A2 .dbend
01A2 .dbfunc e Gotoxy _Gotoxy fV
01A2 ; Col -> R20
01A2 ; Row -> R22
.even
01A2 _Gotoxy::
01A2 0E940000 xcall push_gset2
01A6 422F mov R20,R18
01A8 602F mov R22,R16
01AA .dbline -1
01AA .dbline 80
01AA ; }
01AA ; }
01AA ; }
01AA ; }
01AA ; }
01AA .dbline 82
01AA ; }
01AA ; }
01AA 7727 clr R23
01AC 6230 cpi R22,2
01AE E0E0 ldi R30,0
01B0 7E07 cpc R23,R30
01B2 09F0 breq L54
01B4 05C0 xjmp L51
01B6 X1:
01B6 .dbline 83
01B6 ; }
01B6 L54:
01B6 .dbline 86
01B6 ; }
01B6 ; }
01B6 ; }
01B6 242F mov R18,R20
01B8 2054 subi R18,64 ; addi 192
01BA 0027 clr R16
01BC B1DF xcall _SendByte
01BE .dbline 86
01BE 04C0 xjmp L52
01C0 L51:
01C0 .dbline 97
01C0 242F mov R18,R20
01C2 2058 subi R18,128 ; addi 128
01C4 0027 clr R16
01C6 ACDF xcall _SendByte
01C8 .dbline 97
01C8 L52:
01C8 .dbline -2
01C8 L50:
01C8 0E940000 xcall pop_gset2
01CC .dbline 0 ; func end
01CC 0895 ret
01CE .dbsym r Col 20 c
01CE .dbsym r Row 22 c
01CE .dbend
01CE .dbfunc e Clear _Clear fV
.even
01CE _Clear::
01CE .dbline -1
01CE .dbline 103
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE ; }
01CE .dbline 104
01CE ; }
01CE 21E0 ldi R18,1
01D0 0027 clr R16
01D2 A6DF xcall _SendByte
01D4 .dbline -2
01D4 L55:
01D4 .dbline 0 ; func end
01D4 0895 ret
01D6 .dbend
01D6 .dbfunc e wait_and_clear _wait_and_clear fV
.even
01D6 _wait_and_clear::
01D6 .dbline -1
01D6 .dbline 111
01D6 ; }
01D6 ; }
01D6 ; }
01D6 ; }
01D6 ; }
01D6 ; }
01D6 ; }
01D6 .dbline 112
01D6 ; }
01D6 08EB ldi R16,3000
01D8 1BE0 ldi R17,11
01DA 22DF xcall _DelayMs
01DC .dbline 113
01DC ; }
01DC F8DF xcall _Clear
01DE .dbline -2
01DE L56:
01DE .dbline 0 ; func end
01DE 0895 ret
01E0 .dbend
01E0 .dbfunc e FillCGRAM _FillCGRAM fV
01E0 ; i -> R20
.even
01E0 _FillCGRAM::
01E0 0E940000 xcall push_gset1
01E4 .dbline -1
01E4 .dbline 118
01E4 ; }
01E4 ; }
01E4 ; }
01E4 ; }
01E4 ; }
01E4 .dbline 120
01E4 ; }
01E4 ; }
01E4 20E4 ldi R18,64
01E6 0027 clr R16
01E8 9BDF xcall _SendByte
01EA .dbline 121
01EA ; }
01EA 4427 clr R20
01EC 0AC0 xjmp L61
01EE L58:
01EE .dbline 122
01EE .dbline 123
01EE 80E0 ldi R24,<_CGRAM
01F0 90E0 ldi R25,>_CGRAM
01F2 E42F mov R30,R20
01F4 FF27 clr R31
01F6 E80F add R30,R24
01F8 F91F adc R31,R25
01FA 2491 lpm R18,Z
01FC 01E0 ldi R16,1
01FE 90DF xcall _SendByte
0200 .dbline 124
0200 L59:
0200 .dbline 121
0200 4395 inc R20
0202 L61:
0202 .dbline 121
0202 4034 cpi R20,64
0204 A0F3 brlo L58
0206 .dbline -2
0206 L57:
0206 0E940000 xcall pop_gset1
020A .dbline 0 ; func end
020A 0895 ret
020C .dbsym r i 20 c
020C .dbend
020C .dbfunc e ShowCGRAM _ShowCGRAM fV
020C ; i -> R20
020C ; k -> R22
.even
020C _ShowCGRAM::
020C 0E940000 xcall push_gset3
0210 .dbline -1
0210 .dbline 129
0210 ; }
0210 ; }
0210 ; }
0210 ; }
0210 ; }
0210 ; }
0210 ; }
0210 ; }
0210 .dbline 131
0210 ; }
0210 ; }
0210 4427 clr R20
0212 18C0 xjmp L66
0214 L63:
0214 .dbline 132
0214 ; }
0214 .dbline 133
0214 ; }
0214 20E8 ldi R18,128
0216 0027 clr R16
0218 83DF xcall _SendByte
021A .dbline 134
021A ; }
021A 6627 clr R22
021C 0FC0 xjmp L70
021E L67:
021E .dbline 135
021E ; }
021E .dbline 137
021E ; }
021E ; }
021E A62E mov R10,R22
0220 BB24 clr R11
0222 C501 movw R24,R10
0224 8431 cpi R24,20
0226 E0E0 ldi R30,0
0228 9E07 cpc R25,R30
022A 09F0 breq L74
022C 03C0 xjmp L72
022E X2:
022E .dbline 138
022E ; }
022E L74:
022E .dbline 140
022E ; }
022E ; }
022E 20EC ldi R18,192
0230 0027 clr R16
0232 76DF xcall _SendByte
0234 .dbline 140
0234 .dbline 150
0234 ; }
0234 ; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -