📄 mp3.lis
字号:
062E L144:
062E .dbline 225
062E ; if(keybuf == K_LIFT) (--ii == 255) ? (ii = 2) : 0;
062E 80910000 lds R24,_keybuf
0632 8230 cpi R24,2
0634 39F4 brne L148
0636 .dbline 225
0636 842F mov R24,R20
0638 8150 subi R24,1
063A 482F mov R20,R24
063C 4F3F cpi R20,255
063E 11F4 brne L151
0640 42E0 ldi R20,2
0642 00C0 xjmp L151
0644 L151:
0644 L148:
0644 .dbline 226
0644 ; if(keybuf == K_ESC) {Read_InfoDs1302buf();break;}
0644 80910000 lds R24,_keybuf
0648 8530 cpi R24,5
064A 19F4 brne L152
064C .dbline 226
064C .dbline 226
064C 0E940000 xcall _Read_InfoDs1302buf
0650 .dbline 226
0650 08C0 xjmp L82
0652 L152:
0652 .dbline 227
0652 ; if(keybuf == K_ENTER) {Write_InfoDs1302buf();break;}
0652 80910000 lds R24,_keybuf
0656 8430 cpi R24,4
0658 19F4 brne L154
065A .dbline 227
065A .dbline 227
065A 0E940000 xcall _Write_InfoDs1302buf
065E .dbline 227
065E 01C0 xjmp L82
0660 L154:
0660 .dbline 228
0660 L81:
0660 .dbline 151
0660 ABCE xjmp L80
0662 L82:
0662 .dbline -2
0662 L79:
0662 0E940000 xcall pop_gset4
0666 .dbline 0 ; func end
0666 0895 ret
0668 .dbsym r temp 22 c
0668 .dbsym r ii 20 c
0668 .dbend
0668 .dbfunc e set_system_week _set_system_week fV
.even
0668 _set_system_week::
0668 .dbline -1
0668 .dbline 234
0668 ; }
0668 ; }
0668 ; /*
0668 ; *设置星期
0668 ; */
0668 ; void set_system_week(void)
0668 ; {
0668 36C0 xjmp L158
066A L157:
066A .dbline 235
066A ; while(1){
066A .dbline 236
066A ; show_set_week();
066A 0E940000 xcall _show_set_week
066E .dbline 237
066E ; KEYBUF_NULL;
066E 2224 clr R2
0670 20920000 sts _keybuf,R2
0674 .dbline 237
0674 L160:
0674 .dbline 238
0674 L161:
0674 .dbline 238
0674 ; while(keybuf == NULL);
0674 20900000 lds R2,_keybuf
0678 2220 tst R2
067A E1F3 breq L160
067C .dbline 240
067C ;
067C ; if(keybuf == K_UP) (++timebuf.week == 8) ? (timebuf.week = 1) : 0;
067C 822D mov R24,R2
067E 8330 cpi R24,3
0680 61F4 brne L163
0682 .dbline 240
0682 80910500 lds R24,_timebuf+5
0686 8F5F subi R24,255 ; addi 1
0688 282E mov R2,R24
068A 20920500 sts _timebuf+5,R2
068E 8830 cpi R24,8
0690 21F4 brne L168
0692 81E0 ldi R24,1
0694 80930500 sts _timebuf+5,R24
0698 00C0 xjmp L168
069A L168:
069A L163:
069A .dbline 241
069A ; if(keybuf == K_DOWN)(--timebuf.week == 0) ? (timebuf.week = 7) : 0;
069A 80910000 lds R24,_keybuf
069E 8130 cpi R24,1
06A0 61F4 brne L169
06A2 .dbline 241
06A2 80910500 lds R24,_timebuf+5
06A6 8150 subi R24,1
06A8 282E mov R2,R24
06AA 20920500 sts _timebuf+5,R2
06AE 8823 tst R24
06B0 21F4 brne L174
06B2 87E0 ldi R24,7
06B4 80930500 sts _timebuf+5,R24
06B8 00C0 xjmp L174
06BA L174:
06BA L169:
06BA .dbline 243
06BA ;
06BA ; if(keybuf == K_ESC) {Read_InfoDs1302buf();break;}
06BA 80910000 lds R24,_keybuf
06BE 8530 cpi R24,5
06C0 19F4 brne L175
06C2 .dbline 243
06C2 .dbline 243
06C2 0E940000 xcall _Read_InfoDs1302buf
06C6 .dbline 243
06C6 08C0 xjmp L159
06C8 L175:
06C8 .dbline 244
06C8 ; if(keybuf == K_ENTER) {Write_InfoDs1302buf();break;}
06C8 80910000 lds R24,_keybuf
06CC 8430 cpi R24,4
06CE 19F4 brne L177
06D0 .dbline 244
06D0 .dbline 244
06D0 0E940000 xcall _Write_InfoDs1302buf
06D4 .dbline 244
06D4 01C0 xjmp L159
06D6 L177:
06D6 .dbline 245
06D6 L158:
06D6 .dbline 235
06D6 C9CF xjmp L157
06D8 L159:
06D8 .dbline -2
06D8 L156:
06D8 .dbline 0 ; func end
06D8 0895 ret
06DA .dbend
06DA .dbfunc e set_out_time _set_out_time fV
06DA ; temp -> R14
06DA ; ii -> R22
06DA ; page -> R10
06DA ; ps -> y+12
.even
06DA _set_out_time::
06DA 0E940000 xcall push_arg4
06DE 0E940000 xcall push_gset5
06E2 A22E mov R10,R18
06E4 2297 sbiw R28,2
06E6 .dbline -1
06E6 .dbline 251
06E6 ; }
06E6 ; }
06E6 ; /*
06E6 ; *设置时间
06E6 ; */
06E6 ; void set_out_time(struct time *ps, uchar page)
06E6 ; {
06E6 .dbline 254
06E6 ; uchar ii;
06E6 ; uchar temp;
06E6 ; ii = 0; //最大是2
06E6 6627 clr R22
06E8 83C1 xjmp L181
06EA L180:
06EA .dbline 255
06EA ; while(1){
06EA .dbline 256
06EA ; show_tiem_out(ps, page,ii);
06EA 262E mov R2,R22
06EC 3324 clr R3
06EE 3982 std y+1,R3
06F0 2882 std y+0,R2
06F2 2A2D mov R18,R10
06F4 3327 clr R19
06F6 0C85 ldd R16,y+12
06F8 1D85 ldd R17,y+13
06FA 0E940000 xcall _show_tiem_out
06FE .dbline 257
06FE ; KEYBUF_NULL;
06FE 2224 clr R2
0700 20920000 sts _keybuf,R2
0704 .dbline 257
0704 L183:
0704 .dbline 258
0704 L184:
0704 .dbline 258
0704 ; while(keybuf == NULL);
0704 20900000 lds R2,_keybuf
0708 2220 tst R2
070A E1F3 breq L183
070C .dbline 260
070C ;
070C ; if(keybuf == K_UP){
070C 822D mov R24,R2
070E 8330 cpi R24,3
0710 09F0 breq X21
0712 A2C0 xjmp L186
0714 X21:
0714 .dbline 260
0714 .dbline 261
0714 462F mov R20,R22
0716 5527 clr R21
0718 4030 cpi R20,0
071A 4507 cpc R20,R21
071C 59F0 breq L191
071E X17:
071E 4130 cpi R20,1
0720 E0E0 ldi R30,0
0722 5E07 cpc R21,R30
0724 09F4 brne X22
0726 3AC0 xjmp L194
0728 X22:
0728 4230 cpi R20,2
072A E0E0 ldi R30,0
072C 5E07 cpc R21,R30
072E 09F4 brne X23
0730 69C0 xjmp L197
0732 X23:
0732 92C0 xjmp L188
0734 X18:
0734 .dbline 261
0734 ; switch(ii){
0734 L191:
0734 .dbline 262
0734 ; case 0: temp = ps->hour;
0734 EC85 ldd R30,y+12
0736 FD85 ldd R31,y+13
0738 E280 ldd R14,z+2
073A .dbline 263
073A ; temp >>= 4;
073A 8E2D mov R24,R14
073C 8295 swap R24
073E 8F70 andi R24,#0x0F
0740 .dbline 264
0740 ; temp &= 0x0f;
0740 8F70 andi R24,15
0742 E82E mov R14,R24
0744 .dbline 265
0744 ; temp *= 10;
0744 8AE0 ldi R24,10
0746 8E9D mul R24,R14
0748 E02C mov R14,R0
074A .dbline 266
074A ; temp += (ps->hour&0x0f);
074A EC85 ldd R30,y+12
074C FD85 ldd R31,y+13
074E 8281 ldd R24,z+2
0750 8F70 andi R24,15
0752 E80E add R14,R24
0754 .dbline 267
0754 ; (++temp == 24) ? (temp = 0) : 0;
0754 8E2D mov R24,R14
0756 8F5F subi R24,255 ; addi 1
0758 E82E mov R14,R24
075A 8831 cpi R24,24
075C 11F4 brne L193
075E EE24 clr R14
0760 00C0 xjmp L193
0762 L193:
0762 .dbline 268
0762 ; ps->hour = temp/10;
0762 1AE0 ldi R17,10
0764 0E2D mov R16,R14
0766 0E940000 xcall div8u
076A 202E mov R2,R16
076C EC85 ldd R30,y+12
076E FD85 ldd R31,y+13
0770 2282 std z+2,R2
0772 .dbline 269
0772 ; ps->hour <<= 4;
0772 8C85 ldd R24,y+12
0774 9D85 ldd R25,y+13
0776 0296 adiw R24,2
0778 FC01 movw R30,R24
077A 8081 ldd R24,z+0
077C 8F70 andi R24,#0x0F
077E 8295 swap R24
0780 8083 std z+0,R24
0782
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -