📄 mp3.lis
字号:
0482 .dbline 175
0482 ; timebuf.month <<= 4;
0482 802F mov R24,R16
0484 8F70 andi R24,#0x0F
0486 8295 swap R24
0488 80930400 sts _timebuf+4,R24
048C .dbline 176
048C ; timebuf.month += temp%10;
048C 1AE0 ldi R17,10
048E 062F mov R16,R22
0490 0E940000 xcall mod8u
0494 20900400 lds R2,_timebuf+4
0498 200E add R2,R16
049A 20920400 sts _timebuf+4,R2
049E .dbline 177
049E ; break;
049E 29C0 xjmp L89
04A0 L107:
04A0 .dbline 178
04A0 ; case 2: temp = timebuf.date;
04A0 60910300 lds R22,_timebuf+3
04A4 .dbline 179
04A4 ; temp >>= 4;
04A4 862F mov R24,R22
04A6 8295 swap R24
04A8 8F70 andi R24,#0x0F
04AA 682F mov R22,R24
04AC .dbline 180
04AC ; temp &= 0x0f;
04AC 6F70 andi R22,15
04AE .dbline 181
04AE ; temp *= 10;
04AE 8AE0 ldi R24,10
04B0 869F mul R24,R22
04B2 602D mov R22,R0
04B4 .dbline 182
04B4 ; temp += (timebuf.date&0x0f);
04B4 80910300 lds R24,_timebuf+3
04B8 8F70 andi R24,15
04BA 680F add R22,R24
04BC .dbline 183
04BC ; (++temp == 32) ? (temp = 1) : 0;
04BC 862F mov R24,R22
04BE 8F5F subi R24,255 ; addi 1
04C0 682F mov R22,R24
04C2 6032 cpi R22,32
04C4 11F4 brne L111
04C6 61E0 ldi R22,1
04C8 00C0 xjmp L111
04CA L111:
04CA .dbline 184
04CA ; timebuf.date = temp/10;
04CA 1AE0 ldi R17,10
04CC 062F mov R16,R22
04CE 0E940000 xcall div8u
04D2 00930300 sts _timebuf+3,R16
04D6 .dbline 185
04D6 ; timebuf.date <<= 4;
04D6 802F mov R24,R16
04D8 8F70 andi R24,#0x0F
04DA 8295 swap R24
04DC 80930300 sts _timebuf+3,R24
04E0 .dbline 186
04E0 ; timebuf.date += temp%10;
04E0 1AE0 ldi R17,10
04E2 062F mov R16,R22
04E4 0E940000 xcall mod8u
04E8 20900300 lds R2,_timebuf+3
04EC 200E add R2,R16
04EE 20920300 sts _timebuf+3,R2
04F2 .dbline 187
04F2 ; break;
04F2 L88:
04F2 L89:
04F2 .dbline 189
04F2 ; }//switch
04F2 ; }
04F2 L86:
04F2 .dbline 190
04F2 ; if(keybuf == K_DOWN){
04F2 80910000 lds R24,_keybuf
04F6 8130 cpi R24,1
04F8 09F0 breq X15
04FA 8EC0 xjmp L115
04FC X15:
04FC .dbline 190
04FC .dbline 191
04FC A42E mov R10,R20
04FE BB24 clr R11
0500 AA20 tst R10
0502 11F4 brne X11
0504 BB20 tst R11
0506 59F0 breq L120
0508 X11:
0508 C501 movw R24,R10
050A 8130 cpi R24,1
050C E0E0 ldi R30,0
050E 9E07 cpc R25,R30
0510 81F1 breq L128
0512 8230 cpi R24,2
0514 E0E0 ldi R30,0
0516 9E07 cpc R25,R30
0518 09F4 brne X16
051A 55C0 xjmp L136
051C X16:
051C 7DC0 xjmp L117
051E X12:
051E .dbline 191
051E ; switch(ii){
051E L120:
051E .dbline 192
051E ; case 0: temp = timebuf.year;
051E 60910600 lds R22,_timebuf+6
0522 .dbline 193
0522 ; temp >>= 4;
0522 862F mov R24,R22
0524 8295 swap R24
0526 8F70 andi R24,#0x0F
0528 682F mov R22,R24
052A .dbline 194
052A ; temp &= 0x0f;
052A 6F70 andi R22,15
052C .dbline 195
052C ; temp *= 10;
052C 8AE0 ldi R24,10
052E 869F mul R24,R22
0530 602D mov R22,R0
0532 .dbline 196
0532 ; temp += (timebuf.year&0x0f);
0532 80910600 lds R24,_timebuf+6
0536 8F70 andi R24,15
0538 680F add R22,R24
053A .dbline 197
053A ; (--temp == 255) ? (temp = 99) : 0;
053A 862F mov R24,R22
053C 8150 subi R24,1
053E 682F mov R22,R24
0540 6F3F cpi R22,255
0542 11F4 brne L124
0544 63E6 ldi R22,99
0546 00C0 xjmp L124
0548 L124:
0548 .dbline 198
0548 ; timebuf.year = temp/10;
0548 1AE0 ldi R17,10
054A 062F mov R16,R22
054C 0E940000 xcall div8u
0550 00930600 sts _timebuf+6,R16
0554 .dbline 199
0554 ; timebuf.year <<= 4;
0554 802F mov R24,R16
0556 8F70 andi R24,#0x0F
0558 8295 swap R24
055A 80930600 sts _timebuf+6,R24
055E .dbline 200
055E ; timebuf.year += temp%10;
055E 1AE0 ldi R17,10
0560 062F mov R16,R22
0562 0E940000 xcall mod8u
0566 20900600 lds R2,_timebuf+6
056A 200E add R2,R16
056C 20920600 sts _timebuf+6,R2
0570 .dbline 201
0570 ; break;
0570 53C0 xjmp L118
0572 L128:
0572 .dbline 202
0572 ; case 1: temp = timebuf.month;
0572 60910400 lds R22,_timebuf+4
0576 .dbline 203
0576 ; temp >>= 4;
0576 862F mov R24,R22
0578 8295 swap R24
057A 8F70 andi R24,#0x0F
057C 682F mov R22,R24
057E .dbline 204
057E ; temp &= 0x0f;
057E 6F70 andi R22,15
0580 .dbline 205
0580 ; temp *= 10;
0580 8AE0 ldi R24,10
0582 869F mul R24,R22
0584 602D mov R22,R0
0586 .dbline 206
0586 ; temp += (timebuf.month&0x0f);
0586 80910400 lds R24,_timebuf+4
058A 8F70 andi R24,15
058C 680F add R22,R24
058E .dbline 207
058E ; (--temp == 0) ? (temp = 12) : 0;
058E 862F mov R24,R22
0590 8150 subi R24,1
0592 682F mov R22,R24
0594 8823 tst R24
0596 11F4 brne L132
0598 6CE0 ldi R22,12
059A 00C0 xjmp L132
059C L132:
059C .dbline 208
059C ; timebuf.month = temp/10;
059C 1AE0 ldi R17,10
059E 062F mov R16,R22
05A0 0E940000 xcall div8u
05A4 00930400 sts _timebuf+4,R16
05A8 .dbline 209
05A8 ; timebuf.month <<= 4;
05A8 802F mov R24,R16
05AA 8F70 andi R24,#0x0F
05AC 8295 swap R24
05AE 80930400 sts _timebuf+4,R24
05B2 .dbline 210
05B2 ; timebuf.month += temp%10;
05B2 1AE0 ldi R17,10
05B4 062F mov R16,R22
05B6 0E940000 xcall mod8u
05BA 20900400 lds R2,_timebuf+4
05BE 200E add R2,R16
05C0 20920400 sts _timebuf+4,R2
05C4 .dbline 211
05C4 ; break;
05C4 29C0 xjmp L118
05C6 L136:
05C6 .dbline 212
05C6 ; case 2: temp = timebuf.date;
05C6 60910300 lds R22,_timebuf+3
05CA .dbline 213
05CA ; temp >>= 4;
05CA 862F mov R24,R22
05CC 8295 swap R24
05CE 8F70 andi R24,#0x0F
05D0 682F mov R22,R24
05D2 .dbline 214
05D2 ; temp &= 0x0f;
05D2 6F70 andi R22,15
05D4 .dbline 215
05D4 ; temp *= 10;
05D4 8AE0 ldi R24,10
05D6 869F mul R24,R22
05D8 602D mov R22,R0
05DA .dbline 216
05DA ; temp += (timebuf.date&0x0f);
05DA 80910300 lds R24,_timebuf+3
05DE 8F70 andi R24,15
05E0 680F add R22,R24
05E2 .dbline 217
05E2 ; (--temp == 0) ? (temp = 31) : 0;
05E2 862F mov R24,R22
05E4 8150 subi R24,1
05E6 682F mov R22,R24
05E8 8823 tst R24
05EA 11F4 brne L140
05EC 6FE1 ldi R22,31
05EE 00C0 xjmp L140
05F0 L140:
05F0 .dbline 218
05F0 ; timebuf.date = temp/10;
05F0 1AE0 ldi R17,10
05F2 062F mov R16,R22
05F4 0E940000 xcall div8u
05F8 00930300 sts _timebuf+3,R16
05FC .dbline 219
05FC ; timebuf.date <<= 4;
05FC 802F mov R24,R16
05FE 8F70 andi R24,#0x0F
0600 8295 swap R24
0602 80930300 sts _timebuf+3,R24
0606 .dbline 220
0606 ; timebuf.date += temp%10;
0606 1AE0 ldi R17,10
0608 062F mov R16,R22
060A 0E940000 xcall mod8u
060E 20900300 lds R2,_timebuf+3
0612 200E add R2,R16
0614 20920300 sts _timebuf+3,R2
0618 .dbline 221
0618 ; break;
0618 L117:
0618 L118:
0618 .dbline 223
0618 ; }//switch
0618 ; }
0618 L115:
0618 .dbline 224
0618 ; if(keybuf == K_RIFT) (++ii == 3) ? (ii = 0) : 0;
0618 80910000 lds R24,_keybuf
061C 8630 cpi R24,6
061E 39F4 brne L144
0620 .dbline 224
0620 842F mov R24,R20
0622 8F5F subi R24,255 ; addi 1
0624 482F mov R20,R24
0626 4330 cpi R20,3
0628 11F4 brne L147
062A 4427 clr R20
062C 00C0 xjmp L147
062E L147:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -