📄 main.lis
字号:
019C ; c -> 0,X
019C ; temp -> 4,X
019C ; i -> 6,X
019C ; j -> 7,X
019C _displaytime::
019C A7F8 ais #-8
019E 95 tsx
019F ; }
019F ;
019F ; void displaytime(void){ //显示时间处理
019F ; if(showtime==0x01){ //可显示时才处理
019F B602 lda *_showtime
01A1 A101 cmp #1
01A3 2703 beq X1
01A5 CC03E6 jmp L72
01A8 X1:
01A8 ; unsigned char i=0,j,c[4];
01A8 6F06 clr 6,X
01AA ; int temp=date[0];
01AA B614 lda *_date
01AC E704 sta 4,X
01AE B615 lda *_date+1
01B0 E705 sta 5,X
01B2 6F07 clr 7,X
01B4 2042 bra L77
01B6 L74:
01B6 3500 sthx *__r0
01B8 3F00 clr *__r2
01BA E607 lda 7,X
01BC BB00 add *__r1
01BE B700 sta *__r1
01C0 B600 lda *__r2
01C2 B900 adc *__r0
01C4 B700 sta *__r0
01C6 E605 lda 5,X
01C8 B700 sta *__rlo
01CA E604 lda 4,X
01CC B700 sta *__rhi
01CE A60A lda #10
01D0 87 psha
01D1 4F clra
01D2 87 psha
01D3 CD0000 jsr __divmod16s
01D6 86 pula
01D7 86 pula
01D8 5500 ldhx *__r0
01DA F7 sta ,x
01DB 95 tsx
01DC E605 lda 5,X
01DE B700 sta *__rlo
01E0 E604 lda 4,X
01E2 B700 sta *__rhi
01E4 A60A lda #10
01E6 87 psha
01E7 4F clra
01E8 87 psha
01E9 CD0000 jsr __divmod16s
01EC A702 ais #2
01EE B600 lda *__rhi
01F0 E704 sta 4,X
01F2 B600 lda *__rlo
01F4 E705 sta 5,X
01F6 L75:
01F6 6C07 inc 7,X
01F8 L77:
01F8 ; for(j=0;j<4;j++){ //年中的四位处理,放临时变量
01F8 E607 lda 7,X
01FA A104 cmp #4
01FC 25B8 blo L74
01FE 6F07 clr 7,X
0200 203F bra L81
0202 L78:
0202 3500 sthx *__r0
0204 3F00 clr *__r2
0206 E607 lda 7,X
0208 B700 sta *__r3
020A A603 lda #3
020C B000 sub *__r3
020E B700 sta *__r3
0210 4F clra
0211 B200 sbc *__r2
0213 B700 sta *__r2
0215 B600 lda *__r3
0217 BB00 add *__r1
0219 B700 sta *__r1
021B B600 lda *__r2
021D B900 adc *__r0
021F B700 sta *__r0
0221 5500 ldhx *__r0
0223 F6 lda ,x
0224 95 tsx
0225 AB30 add #48
0227 B700 sta *__r1
0229 3F00 clr *__r2
022B E606 lda 6,X
022D AB44 add #<_show
022F B700 sta *__r3
0231 B600 lda *__r2
0233 A944 adc #>_show
0235 B700 sta *__r2
0237 B600 lda *__r1
0239 5500 ldhx *__r2
023B F7 sta ,x
023C 95 tsx
023D 6C06 inc 6,X
023F L79:
023F 6C07 inc 7,X
0241 L81:
0241 ; c[j]=(char)(temp%10);
0241 ; temp/=10;
0241 ; }
0241 ; for(j=0;j<4;j++){ //年存到显示单元中
0241 E607 lda 7,X
0243 A104 cmp #4
0245 25BB blo L78
0247 ; show[i]=c[3-j]+0x30;i++;
0247 ; }
0247 ; show[i]='-';i++;
0247 3F00 clr *__r0
0249 E606 lda 6,X
024B AB44 add #<_show
024D B700 sta *__r1
024F B600 lda *__r0
0251 A944 adc #>_show
0253 B700 sta *__r0
0255 A62D lda #45
0257 5500 ldhx *__r0
0259 F7 sta ,x
025A 95 tsx
025B 6C06 inc 6,X
025D 6F07 clr 7,X
025F CC0306 jmp L85
0262 L82:
0262 ; for(j=0;j<2;j++){ //月日存到显示单元中
0262 ; show[i]=(char)date[j+1]/10+0x30;i++;
0262 3F00 clr *__r0
0264 E607 lda 7,X
0266 B700 sta *__r1
0268 5500 ldhx *__r0
026A AF01 aix #1
026C 3500 sthx *__r0
026E 3800 lsl *__r1
0270 3900 rol *__r0
0272 B600 lda *__r1
0274 AB14 add #<_date
0276 B700 sta *__r1
0278 B600 lda *__r0
027A A914 adc #>_date
027C B700 sta *__r0
027E 5500 ldhx *__r0
0280 E601 lda 1,x
0282 95 tsx
0283 87 psha
0284 A60A lda #10
0286 87 psha
0287 CD0000 jsr __div8s
028A A702 ais #2
028C AB30 add #48
028E B700 sta *__r1
0290 3F00 clr *__r2
0292 E606 lda 6,X
0294 AB44 add #<_show
0296 B700 sta *__r3
0298 B600 lda *__r2
029A A944 adc #>_show
029C B700 sta *__r2
029E B600 lda *__r1
02A0 5500 ldhx *__r2
02A2 F7 sta ,x
02A3 95 tsx
02A4 6C06 inc 6,X
02A6 ; show[i]=(char)date[j+1]%10+0x30;i++;
02A6 3F00 clr *__r0
02A8 E607 lda 7,X
02AA B700 sta *__r1
02AC 5500 ldhx *__r0
02AE AF01 aix #1
02B0 3500 sthx *__r0
02B2 3800 lsl *__r1
02B4 3900 rol *__r0
02B6 B600 lda *__r1
02B8 AB14 add #<_date
02BA B700 sta *__r1
02BC B600 lda *__r0
02BE A914 adc #>_date
02C0 B700 sta *__r0
02C2 5500 ldhx *__r0
02C4 E601 lda 1,x
02C6 95 tsx
02C7 87 psha
02C8 A60A lda #10
02CA 87 psha
02CB CD0000 jsr __mod8s
02CE A702 ais #2
02D0 AB30 add #48
02D2 B700 sta *__r1
02D4 3F00 clr *__r2
02D6 E606 lda 6,X
02D8 AB44 add #<_show
02DA B700 sta *__r3
02DC B600 lda *__r2
02DE A944 adc #>_show
02E0 B700 sta *__r2
02E2 B600 lda *__r1
02E4 5500 ldhx *__r2
02E6 F7 sta ,x
02E7 95 tsx
02E8 6C06 inc 6,X
02EA ; if(j==0){show[i]='-';i++;}
02EA E607 lda 7,X
02EC 2616 bne L86
02EE 3F00 clr *__r0
02F0 E606 lda 6,X
02F2 AB44 add #<_show
02F4 B700 sta *__r1
02F6 B600 lda *__r0
02F8 A944 adc #>_show
02FA B700 sta *__r0
02FC A62D lda #45
02FE 5500 ldhx *__r0
0300 F7 sta ,x
0301 95 tsx
0302 6C06 inc 6,X
0304 L86:
0304 L83:
0304 6C07 inc 7,X
0306 L85:
0306 E607 lda 7,X
0308 A102 cmp #2
030A 2403 bhs X2
030C CC0262 jmp L82
030F X2:
030F ; }
030F ; show[i]='E';i++; //换行
030F 3F00 clr *__r0
0311 E606 lda 6,X
0313 AB44 add #<_show
0315 B700 sta *__r1
0317 B600 lda *__r0
0319 A944 adc #>_show
031B B700 sta *__r0
031D A645 lda #69
031F 5500 ldhx *__r0
0321 F7 sta ,x
0322 95 tsx
0323 6C06 inc 6,X
0325 6F07 clr 7,X
0327 CC03AC jmp L91
032A L88:
032A ; for(j=0;j<3;j++){ //时,分,秒存到显示单元中
032A ; show[i]=0x30+(time[j]/10);i++;
032A 3F00 clr *__r0
032C E607 lda 7,X
032E AB1A add #<_time
0330 B700 sta *__r1
0332 B600 lda *__r0
0334 A91A adc #>_time
0336 B700 sta *__r0
0338 5500 ldhx *__r0
033A F6 lda ,x
033B AE0A ldx #10
033D 8C clrh
033E 52 div
033F 95 tsx
0340 AB30 add #48
0342 B700 sta *__r1
0344 3F00 clr *__r2
0346 E606 lda 6,X
0348 AB44 add #<_show
034A B700 sta *__r3
034C B600 lda *__r2
034E A944 adc #>_show
0350 B700 sta *__r2
0352 B600 lda *__r1
0354 5500 ldhx *__r2
0356 F7 sta ,x
0357 95 tsx
0358 6C06 inc 6,X
035A ; show[i]=0x30+(time[j]%10);i++;
035A 3F00 clr *__r0
035C E607 lda 7,X
035E AB1A add #<_time
0360 B700 sta *__r1
0362 B600 lda *__r0
0364 A91A adc #>_time
0366 B700 sta *__r0
0368 5500 ldhx *__r0
036A F6 lda ,x
036B AE0A ldx #10
036D 8C clrh
036E 52 div
036F 8B pshh
0370 86 pula
0371 95 tsx
0372 AB30 add #48
0374 B700 sta *__r1
0376 3F00 clr *__r2
0378 E606 lda 6,X
037A AB44 add #<_show
037C B700 sta *__r3
037E B600 lda *__r2
0380 A944 adc #>_show
0382 B700 sta *__r2
0384 B600 lda *__r1
0386 5500 ldhx *__r2
0388 F7 sta ,x
0389 95 tsx
038A 6C06 inc 6,X
038C ; if(j==2)break;
038C E607 lda 7,X
038E A102 cmp #2
0390 2602 bne L92
0392 2021 bra L90
0394 L92:
0394 3F00 clr *__r0
0396 E606 lda 6,X
0398 AB44 add #<_show
039A B700 sta *__r1
039C B600 lda *__r0
039E A944 adc #>_show
03A0 B700 sta *__r0
03A2 A63A lda #58
03A4 5500 ldhx *__r0
03A6 F7 sta ,x
03A7 95 tsx
03A8 6C06 inc 6,X
03AA L89:
03AA 6C07 inc 7,X
03AC L91:
03AC E607 lda 7,X
03AE A103 cmp #3
03B0 2403 bhs X3
03B2 CC032A jmp L88
03B5 X3:
03B5 L90:
03B5 ; show[i]=':';i++;
03B5 ; }
03B5 ; show[i]='E';
03B5 3F00 clr *__r0
03B7 E606 lda 6,X
03B9 AB44 add #<_show
03BB B700 sta *__r1
03BD B600 lda *__r0
03BF A944 adc #>_show
03C1 B700 sta *__r0
03C3 A645 lda #69
03C5 5500 ldhx *__r0
03C7 F7 sta ,x
03C8 ; lcdshow((unsigned char *)show); //显示日期时间
03C8 A644 lda #<_show
03CA 87 psha
03CB A644 lda #>_show
03CD 87 psha
03CE CD0000 jsr _lcdshow
03D1 A702 ais #2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -