📄 playedit.lis
字号:
053C ; /*
053C ; 编辑
053C ; */
053C ; void Play_Edit(uchar data)
053C ; {
053C .dbline 134
053C ; uchar day;
053C ; uchar temp;
053C ; uchar active[8];
053C ; uchar move;
053C ; struct fileinfor FILE[8];
053C ; uint point;
053C ; //检查空间
053C ;
053C ; point = 0;
053C 0024 clr R0
053E 1124 clr R1
0540 FE01 movw R30,R28
0542 E05F subi R30,240 ; addi 272
0544 FE4F sbci R31,254
0546 1182 std z+1,R1
0548 0082 std z+0,R0
054A .dbline 135
054A ; point += 8*data*sizeof(FILE[0]);
054A 88E0 ldi R24,8
054C 849F mul R24,R20
054E 80E2 ldi R24,32
0550 809D mul R24,R0
0552 FE01 movw R30,R28
0554 E05F subi R30,240 ; addi 272
0556 FE4F sbci R31,254
0558 0081 ldd R16,z+0
055A 1181 ldd R17,z+1
055C 000D add R16,R0
055E 111D adc R17,R1
0560 FE01 movw R30,R28
0562 E05F subi R30,240 ; addi 272
0564 FE4F sbci R31,254
0566 1183 std z+1,R17
0568 0083 std z+0,R16
056A .dbline 137
056A ;
056A ; for(day=0; day<8; day++)
056A 6627 clr R22
056C 1DC0 xjmp L91
056E L88:
056E .dbline 138
056E .dbline 139
056E FE01 movw R30,R28
0570 E05F subi R30,240 ; addi 272
0572 FE4F sbci R31,254
0574 8081 ldd R24,z+0
0576 9181 ldd R25,z+1
0578 8096 adiw R24,32
057A FE01 movw R30,R28
057C E05F subi R30,240 ; addi 272
057E FE4F sbci R31,254
0580 9183 std z+1,R25
0582 8083 std z+0,R24
0584 .dbline 140
0584 80E2 ldi R24,32
0586 90E0 ldi R25,0
0588 9983 std y+1,R25
058A 8883 std y+0,R24
058C 869F mul R24,R22
058E 9001 movw R18,R0
0590 CE01 movw R24,R28
0592 4096 adiw R24,16
0594 280F add R18,R24
0596 391F adc R19,R25
0598 FE01 movw R30,R28
059A E05F subi R30,240 ; addi 272
059C FE4F sbci R31,254
059E 0081 ldd R16,z+0
05A0 1181 ldd R17,z+1
05A2 0E940000 xcall _EEPROMReadBytes
05A6 .dbline 141
05A6 L89:
05A6 .dbline 137
05A6 6395 inc R22
05A8 L91:
05A8 .dbline 137
05A8 6830 cpi R22,8
05AA 08F3 brlo L88
05AC .dbline 142
05AC ; {
05AC ; point += sizeof(FILE[day]);
05AC ; EEPROMReadBytes(point,&FILE[day],sizeof(FILE[day]));
05AC ; }
05AC ; day = 0;
05AC 6627 clr R22
05AE .dbline 143
05AE ; for(temp=0; temp<8; temp++)
05AE 4427 clr R20
05B0 13C0 xjmp L95
05B2 L92:
05B2 .dbline 144
05B2 ; {
05B2 .dbline 145
05B2 ; if(FILE[temp].active == 0x55) {active[day] = temp;day++;}
05B2 80E2 ldi R24,32
05B4 849F mul R24,R20
05B6 F001 movw R30,R0
05B8 CE01 movw R24,R28
05BA 8C96 adiw R24,44
05BC E80F add R30,R24
05BE F91F adc R31,R25
05C0 8081 ldd R24,z+0
05C2 8535 cpi R24,85
05C4 41F4 brne L96
05C6 .dbline 145
05C6 .dbline 145
05C6 CE01 movw R24,R28
05C8 0896 adiw R24,8
05CA E62F mov R30,R22
05CC FF27 clr R31
05CE E80F add R30,R24
05D0 F91F adc R31,R25
05D2 4083 std z+0,R20
05D4 .dbline 145
05D4 6395 inc R22
05D6 .dbline 145
05D6 L96:
05D6 .dbline 146
05D6 L93:
05D6 .dbline 143
05D6 4395 inc R20
05D8 L95:
05D8 .dbline 143
05D8 4830 cpi R20,8
05DA 58F3 brlo L92
05DC .dbline 147
05DC ; }
05DC ; active[day] = 0xff;
05DC CE01 movw R24,R28
05DE 0896 adiw R24,8
05E0 E62F mov R30,R22
05E2 FF27 clr R31
05E4 E80F add R30,R24
05E6 F91F adc R31,R25
05E8 8FEF ldi R24,255
05EA 8083 std z+0,R24
05EC .dbline 148
05EC ; Print_val(day);
05EC 062F mov R16,R22
05EE 1127 clr R17
05F0 0E940000 xcall _Print_val
05F4 .dbline 149
05F4 ; day = 0;
05F4 6627 clr R22
05F6 .dbline 150
05F6 ; temp = 0;
05F6 4427 clr R20
05F8 BFC1 xjmp L100
05FA L99:
05FA .dbline 151
05FA ; while(1){ //显示出来
05FA .dbline 152
05FA ; show_clear();
05FA 0E940000 xcall _show_clear
05FE .dbline 153
05FE ; show_lcd(0, 0, 192, 2, &show_main[0],0);
05FE 2224 clr R2
0600 3324 clr R3
0602 3F82 std y+7,R3
0604 2E82 std y+6,R2
0606 80E0 ldi R24,<_show_main
0608 90E0 ldi R25,>_show_main
060A 9D83 std y+5,R25
060C 8C83 std y+4,R24
060E 82E0 ldi R24,2
0610 90E0 ldi R25,0
0612 9B83 std y+3,R25
0614 8A83 std y+2,R24
0616 80EC ldi R24,192
0618 9983 std y+1,R25
061A 8883 std y+0,R24
061C 2227 clr R18
061E 3327 clr R19
0620 0027 clr R16
0622 1127 clr R17
0624 0E940000 xcall _show_lcd
0628 .dbline 154
0628 ; move = 0;
0628 EE24 clr R14
062A .dbline 155
062A ; if(active[day] == 0xff) goto NEXT;
062A CE01 movw R24,R28
062C 0896 adiw R24,8
062E E62F mov R30,R22
0630 FF27 clr R31
0632 E80F add R30,R24
0634 F91F adc R31,R25
0636 8081 ldd R24,z+0
0638 8F3F cpi R24,255
063A 09F4 brne L102
063C .dbline 155
063C 71C0 xjmp L104
063E L102:
063E .dbline 156
063E ; if(active[day] != 0xff){move += 1;
063E CE01 movw R24,R28
0640 0896 adiw R24,8
0642 E62F mov R30,R22
0644 FF27 clr R31
0646 E80F add R30,R24
0648 F91F adc R31,R25
064A 8081 ldd R24,z+0
064C 8F3F cpi R24,255
064E B1F0 breq L105
0650 .dbline 156
0650 .dbline 156
0650 E394 inc R14
0652 .dbline 157
0652 ; show_name(&FILE[active[day]],2,0);
0652 2224 clr R2
0654 3324 clr R3
0656 3982 std y+1,R3
0658 2882 std y+0,R2
065A 22E0 ldi R18,2
065C 30E0 ldi R19,0
065E CE01 movw R24,R28
0660 0896 adiw R24,8
0662 E62F mov R30,R22
0664 FF27 clr R31
0666 E80F add R30,R24
0668 F91F adc R31,R25
066A 2080 ldd R2,z+0
066C 80E2 ldi R24,32
066E 829D mul R24,R2
0670 8001 movw R16,R0
0672 CE01 movw R24,R28
0674 4096 adiw R24,16
0676 080F add R16,R24
0678 191F adc R17,R25
067A 87D1 xcall _show_name
067C .dbline 158
067C ; }
067C L105:
067C .dbline 159
067C ; if(active[day+1] == 0xff) goto NEXT;
067C CE01 movw R24,R28
067E 0996 adiw R24,9
0680 E62F mov R30,R22
0682 FF27 clr R31
0684 E80F add R30,R24
0686 F91F adc R31,R25
0688 8081 ldd R24,z+0
068A 8F3F cpi R24,255
068C 09F4 brne L107
068E .dbline 159
068E 48C0 xjmp L104
0690 L107:
0690 .dbline 160
0690 ; if(active[day+1] != 0xff) {move += 1;
0690 CE01 movw R24,R28
0692 0996 adiw R24,9
0694 E62F mov R30,R22
0696 FF27 clr R31
0698 E80F add R30,R24
069A F91F adc R31,R25
069C 8081 ldd R24,z+0
069E 8F3F cpi R24,255
06A0 B1F0 breq L110
06A2 .dbline 160
06A2 .dbline 160
06A2 E394 inc R14
06A4 .dbline 161
06A4 ; show_name(&FILE[active[day+1]],4,0);
06A4 2224 clr R2
06A6 3324 clr R3
06A8 3982 std y+1,R3
06AA 2882 std y+0,R2
06AC 24E0 ldi R18,4
06AE 30E0 ldi R19,0
06B0 CE01 movw R24,R28
06B2 0996 adiw R24,9
06B4 E62F mov R30,R22
06B6 FF27 clr R31
06B8 E80F add R30,R24
06BA F91F adc R31,R25
06BC 2080 ldd R2,z+0
06BE 80E2 ldi R24,32
06C0 829D mul R24,R2
06C2 8001 movw R16,R0
06C4 CE01 movw R24,R28
06C6 4096 adiw R24,16
06C8 080F add R16,R24
06CA 191F adc R17,R25
06CC 5ED1 xcall _show_name
06CE .dbline 162
06CE ; }
06CE L110:
06CE .dbline 163
06CE ; if(active[day+2] == 0xff) goto NEXT;
06CE CE01 movw R24,R28
06D0 0A96 adiw R24,10
06D2 E62F mov R30,R22
06D4 FF27 clr R31
06D6 E80F add R30,R24
06D8 F91F adc R31,R25
06DA 8081 ldd R24,z+0
06DC 8F3F cpi R24,255
06DE 09F4 brne L114
06E0 .dbline 163
06E0 1FC0 xjmp L104
06E2 L114:
06E2 .dbline 164
06E2 ; if(active[day+2] != 0xff) {move += 1;
06E2 CE01 movw R24,R28
06E4 0A96 adiw R24,10
06E6 E62F mov R30,R22
06E8 FF27 clr R31
06EA E80F add R30,R24
06EC F91F adc R31,R25
06EE 8081 ldd R24,z+0
06F0 8F3F cpi R24,255
06F2 B1F0 breq L117
06F4 .dbline 164
06F4 .dbline 164
06F4 E394 inc R14
06F6 .dbline 165
06F6 ; show_name(&FILE[active[day+2]],6,0);
06F6 2224 clr R2
06F8 3324 clr R3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -