⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcdshow.lis

📁 可以显示年月日,时间等,也可以设置闹钟,设定时间
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 0244           ;     datestr[j]=(unsigned char)i+0x30;
 0244 F6                lda ,X
 0245 AB30              add #48
 0247 B700              sta *__r1
 0249 3F00              clr *__r2
 024B E601              lda 1,X
 024D AB00              add #<_datestr
 024F B700              sta *__r3
 0251 B600              lda *__r2
 0253 A900              adc #>_datestr
 0255 B700              sta *__r2
 0257 B600              lda *__r1
 0259 5500              ldhx *__r2
 025B F7                sta ,x
 025C 95                tsx
 025D           ;     if(j<=3)data[2]=data[2]-10^(3-j);
 025D E601              lda 1,X
 025F A103              cmp #3
 0261 220E              bhi L54
 0263 A603              lda #3
 0265 E001              sub 1,X
 0267 B700              sta *__r0
 0269 B608              lda *_data+2
 026B A00A              sub #10
 026D B800              eor *__r0
 026F B708              sta *_data+2
 0271           L54:
 0271           ;     if(j>=5&&j<=6)data[1]=data[1]-10^(j-5);
 0271 E601              lda 1,X
 0273 A105              cmp #5
 0275 2510              blo L58
 0277 A106              cmp #6
 0279 220C              bhi L58
 027B A005              sub #5
 027D B700              sta *__r0
 027F B607              lda *_data+1
 0281 A00A              sub #10
 0283 B800              eor *__r0
 0285 B707              sta *_data+1
 0287           L58:
 0287           ;     if(j>=8&&j<=9)data[0]=data[0]-10^(j-8);
 0287 E601              lda 1,X
 0289 A108              cmp #8
 028B 2510              blo L62
 028D A109              cmp #9
 028F 220C              bhi L62
 0291 A008              sub #8
 0293 B700              sta *__r0
 0295 B606              lda *_data
 0297 A00A              sub #10
 0299 B800              eor *__r0
 029B B706              sta *_data
 029D           L62:
 029D           ;     if(j>=10&&j<=11)time[2]=time[2]-10^(j-10);
 029D E601              lda 1,X
 029F A10A              cmp #10
 02A1 2528              blo L64
 02A3 A10B              cmp #11
 02A5 2224              bhi L64
 02A7 3F00              clr *__r0
 02A9 A00A              sub #10
 02AB B700              sta *__r1
 02AD B600              lda *__r0
 02AF A200              sbc #0
 02B1 B700              sta *__r0
 02B3 B605              lda *_time+4+1
 02B5 A00A              sub #10
 02B7 B700              sta *__r3
 02B9 B604              lda *_time+4
 02BB A200              sbc #0
 02BD B700              sta *__r2
 02BF B600              lda *__r3
 02C1 B800              eor *__r1
 02C3 B705              sta *_time+4+1
 02C5 B600              lda *__r2
 02C7 B800              eor *__r0
 02C9 B704              sta *_time+4
 02CB           L64:
 02CB           ;     if(j>=13&&j<=14)time[1]=time[1]-10^(j-13);
 02CB E601              lda 1,X
 02CD A10D              cmp #13
 02CF 2528              blo L68
 02D1 A10E              cmp #14
 02D3 2224              bhi L68
 02D5 3F00              clr *__r0
 02D7 A00D              sub #13
 02D9 B700              sta *__r1
 02DB B600              lda *__r0
 02DD A200              sbc #0
 02DF B700              sta *__r0
 02E1 B603              lda *_time+2+1
 02E3 A00A              sub #10
 02E5 B700              sta *__r3
 02E7 B602              lda *_time+2
 02E9 A200              sbc #0
 02EB B700              sta *__r2
 02ED B600              lda *__r3
 02EF B800              eor *__r1
 02F1 B703              sta *_time+2+1
 02F3 B600              lda *__r2
 02F5 B800              eor *__r0
 02F7 B702              sta *_time+2
 02F9           L68:
 02F9           ;     if(j>=15&&j<=16)time[0]=time[0]-10^(j-15); 
 02F9 E601              lda 1,X
 02FB A10F              cmp #15
 02FD 2528              blo L72
 02FF A110              cmp #16
 0301 2224              bhi L72
 0303 3F00              clr *__r0
 0305 A00F              sub #15
 0307 B700              sta *__r1
 0309 B600              lda *__r0
 030B A200              sbc #0
 030D B700              sta *__r0
 030F B601              lda *_time+1
 0311 A00A              sub #10
 0313 B700              sta *__r3
 0315 B600              lda *_time
 0317 A200              sbc #0
 0319 B700              sta *__r2
 031B B600              lda *__r3
 031D B800              eor *__r1
 031F B701              sta *_time+1
 0321 B600              lda *__r2
 0323 B800              eor *__r0
 0325 B700              sta *_time
 0327           L72:
 0327           L53:
 0327 A702              ais #2
 0329                   .dbline 0 ; func end
 0329 81                rts
 032A           ;              i -> 0,X
 032A           ;              j -> 1,X
 032A           _up::
 032A A7FE              ais #-2
 032C 95                tsx
 032D           ; }
 032D           ; void up(void)       ////进入右移时间模式
 032D           ;   { 
 032D           ;    //
 032D           ;     unsigned char i,j;
 032D           ;     j=flat;
 032D B600              lda *_flat
 032F E701              sta 1,X
 0331           ;     i=(unsigned char)datestr[j]-0x30;
 0331 3F00              clr *__r0
 0333 AB00              add #<_datestr
 0335 B700              sta *__r1
 0337 B600              lda *__r0
 0339 A900              adc #>_datestr
 033B B700              sta *__r0
 033D 5500              ldhx *__r0
 033F F6                lda ,x
 0340 95                tsx
 0341 A030              sub #48
 0343 F7                sta ,X
 0344           ;     i=i+1;
 0344 7C                inc ,X
 0345           ;     datestr[j]=(unsigned char)i+0x30;
 0345 F6                lda ,X
 0346 AB30              add #48
 0348 B700              sta *__r1
 034A 3F00              clr *__r2
 034C E601              lda 1,X
 034E AB00              add #<_datestr
 0350 B700              sta *__r3
 0352 B600              lda *__r2
 0354 A900              adc #>_datestr
 0356 B700              sta *__r2
 0358 B600              lda *__r1
 035A 5500              ldhx *__r2
 035C F7                sta ,x
 035D 95                tsx
 035E           ;     if(j<=3)data[2]=data[2]+10^(3-j);
 035E E601              lda 1,X
 0360 A103              cmp #3
 0362 220E              bhi L75
 0364 A603              lda #3
 0366 E001              sub 1,X
 0368 B700              sta *__r0
 036A B608              lda *_data+2
 036C AB0A              add #10
 036E B800              eor *__r0
 0370 B708              sta *_data+2
 0372           L75:
 0372           ;     if(j>=5&&j<=6)data[1]=data[1]+10^(j-5);
 0372 E601              lda 1,X
 0374 A105              cmp #5
 0376 2510              blo L79
 0378 A106              cmp #6
 037A 220C              bhi L79
 037C A005              sub #5
 037E B700              sta *__r0
 0380 B607              lda *_data+1
 0382 AB0A              add #10
 0384 B800              eor *__r0
 0386 B707              sta *_data+1
 0388           L79:
 0388           ;     if(j>=8&&j<=9)data[0]=data[0]+10^(j-8);
 0388 E601              lda 1,X
 038A A108              cmp #8
 038C 2510              blo L83
 038E A109              cmp #9
 0390 220C              bhi L83
 0392 A008              sub #8
 0394 B700              sta *__r0
 0396 B606              lda *_data
 0398 AB0A              add #10
 039A B800              eor *__r0
 039C B706              sta *_data
 039E           L83:
 039E           ;     if(j>=10&&j<=11)time[2]=time[2]+10^(j-10);
 039E E601              lda 1,X
 03A0 A10A              cmp #10
 03A2 2523              blo L85
 03A4 A10B              cmp #11
 03A6 221F              bhi L85
 03A8 3F00              clr *__r0
 03AA A00A              sub #10
 03AC B700              sta *__r1
 03AE B600              lda *__r0
 03B0 A200              sbc #0
 03B2 B700              sta *__r0
 03B4 5504              ldhx *_time+4
 03B6 AF0A              aix #10
 03B8 3500              sthx *__r2
 03BA 95                tsx
 03BB B600              lda *__r3
 03BD B800              eor *__r1
 03BF B705              sta *_time+4+1
 03C1 B600              lda *__r2
 03C3 B800              eor *__r0
 03C5 B704              sta *_time+4
 03C7           L85:
 03C7           ;     if(j>=13&&j<=14)time[1]=time[1]+10^(j-13);
 03C7 E601              lda 1,X
 03C9 A10D              cmp #13
 03CB 2523              blo L89
 03CD A10E              cmp #14
 03CF 221F              bhi L89
 03D1 3F00              clr *__r0
 03D3 A00D              sub #13
 03D5 B700              sta *__r1
 03D7 B600              lda *__r0
 03D9 A200              sbc #0
 03DB B700              sta *__r0
 03DD 5502              ldhx *_time+2
 03DF AF0A              aix #10
 03E1 3500              sthx *__r2
 03E3 95                tsx
 03E4 B600              lda *__r3
 03E6 B800              eor *__r1
 03E8 B703              sta *_time+2+1
 03EA B600              lda *__r2
 03EC B800              eor *__r0
 03EE B702              sta *_time+2
 03F0           L89:
 03F0           ;     if(j>=15&&j<=16)time[0]=time[0]+10^(j-15); 
 03F0 E601              lda 1,X
 03F2 A10F              cmp #15
 03F4 2523              blo L93
 03F6 A110              cmp #16
 03F8 221F              bhi L93
 03FA 3F00              clr *__r0
 03FC A00F              sub #15
 03FE B700              sta *__r1
 0400 B600              lda *__r0
 0402 A200              sbc #0
 0404 B700              sta *__r0
 0406 5500              ldhx *_time
 0408 AF0A              aix #10
 040A 3500              sthx *__r2
 040C 95                tsx
 040D B600              lda *__r3
 040F B800              eor *__r1
 0411 B701              sta *_time+1
 0413 B600              lda *__r2
 0415 B800              eor *__r0
 0417 B700              sta *_time
 0419           L93:
 0419           ;     lcdshow((unsigned char *)datestr,(unsigned char *)clockstr);
 0419 A600              lda #<_clockstr
 041B 87                psha
 041C A600              lda #>_clockstr
 041E 87                psha
 041F A600              lda #<_datestr
 0421 87                psha
 0422 A600              lda #>_datestr
 0424 87                psha
 0425 CD006D            jsr _lcdshow
 0428 A704              ais #4
 042A 95                tsx
 042B           L74:
 042B A702              ais #2
 042D                   .dbline 0 ; func end
 042D 81                rts
                        .area bss
 0000           _time::
 0000                   .blkb 6
 0006           _data::
 0006                   .blkb 3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -