📄 playedit.lis
字号:
018E E80F add R30,R24
0190 F91F adc R31,R25
0192 2080 ldd R2,z+0
0194 80E2 ldi R24,32
0196 829D mul R24,R2
0198 8001 movw R16,R0
019A CE01 movw R24,R28
019C 4096 adiw R24,16
019E 080F add R16,R24
01A0 191F adc R17,R25
01A2 F3D3 xcall _show_name
01A4 .dbline 64
01A4 ; }
01A4 L25:
01A4 .dbline 65
01A4 ; if(active[day+2] == 0xff) goto NEXT;
01A4 CE01 movw R24,R28
01A6 0A96 adiw R24,10
01A8 EA2D mov R30,R10
01AA FF27 clr R31
01AC E80F add R30,R24
01AE F91F adc R31,R25
01B0 8081 ldd R24,z+0
01B2 8F3F cpi R24,255
01B4 09F4 brne L29
01B6 .dbline 65
01B6 1FC0 xjmp L19
01B8 L29:
01B8 .dbline 66
01B8 ; if(active[day+2] != 0xff) {move += 1;
01B8 CE01 movw R24,R28
01BA 0A96 adiw R24,10
01BC EA2D mov R30,R10
01BE FF27 clr R31
01C0 E80F add R30,R24
01C2 F91F adc R31,R25
01C4 8081 ldd R24,z+0
01C6 8F3F cpi R24,255
01C8 B1F0 breq L32
01CA .dbline 66
01CA .dbline 66
01CA E394 inc R14
01CC .dbline 67
01CC ; show_name(&FILE[active[day+2]],6,0);
01CC 2224 clr R2
01CE 3324 clr R3
01D0 3982 std y+1,R3
01D2 2882 std y+0,R2
01D4 26E0 ldi R18,6
01D6 30E0 ldi R19,0
01D8 CE01 movw R24,R28
01DA 0A96 adiw R24,10
01DC EA2D mov R30,R10
01DE FF27 clr R31
01E0 E80F add R30,R24
01E2 F91F adc R31,R25
01E4 2080 ldd R2,z+0
01E6 80E2 ldi R24,32
01E8 829D mul R24,R2
01EA 8001 movw R16,R0
01EC CE01 movw R24,R28
01EE 4096 adiw R24,16
01F0 080F add R16,R24
01F2 191F adc R17,R25
01F4 CAD3 xcall _show_name
01F6 .dbline 68
01F6 ; }
01F6 L32:
01F6 L19:
01F6 .dbline 70
01F6 ; NEXT:
01F6 ; if(move != 0){
01F6 EE20 tst R14
01F8 09F4 brne X4
01FA 55C0 xjmp L36
01FC X4:
01FC .dbline 70
01FC .dbline 71
01FC FE01 movw R30,R28
01FE E05F subi R30,240 ; addi 272
0200 FE4F sbci R31,254
0202 C080 ldd R12,z+0
0204 DD24 clr R13
0206 CC20 tst R12
0208 11F4 brne X0
020A DD20 tst R13
020C 59F0 breq L41
020E X0:
020E C601 movw R24,R12
0210 8130 cpi R24,1
0212 E0E0 ldi R30,0
0214 9E07 cpc R25,R30
0216 E1F0 breq L42
0218 8230 cpi R24,2
021A E0E0 ldi R30,0
021C 9E07 cpc R25,R30
021E 09F4 brne X5
0220 2DC0 xjmp L44
0222 X5:
0222 41C0 xjmp L38
0224 X1:
0224 .dbline 71
0224 ; switch(temp){
0224 L41:
0224 .dbline 72
0224 ; case 0:show_name(&FILE[active[day]],2,1);break;
0224 81E0 ldi R24,1
0226 90E0 ldi R25,0
0228 9983 std y+1,R25
022A 8883 std y+0,R24
022C 22E0 ldi R18,2
022E 30E0 ldi R19,0
0230 CE01 movw R24,R28
0232 0896 adiw R24,8
0234 EA2D mov R30,R10
0236 FF27 clr R31
0238 E80F add R30,R24
023A F91F adc R31,R25
023C 2080 ldd R2,z+0
023E 80E2 ldi R24,32
0240 829D mul R24,R2
0242 8001 movw R16,R0
0244 CE01 movw R24,R28
0246 4096 adiw R24,16
0248 080F add R16,R24
024A 191F adc R17,R25
024C 9ED3 xcall _show_name
024E .dbline 72
024E 2BC0 xjmp L39
0250 L42:
0250 .dbline 73
0250 ; case 1:show_name(&FILE[active[day+1]],4,1);break;
0250 81E0 ldi R24,1
0252 90E0 ldi R25,0
0254 9983 std y+1,R25
0256 8883 std y+0,R24
0258 24E0 ldi R18,4
025A 30E0 ldi R19,0
025C CE01 movw R24,R28
025E 0996 adiw R24,9
0260 EA2D mov R30,R10
0262 FF27 clr R31
0264 E80F add R30,R24
0266 F91F adc R31,R25
0268 2080 ldd R2,z+0
026A 80E2 ldi R24,32
026C 829D mul R24,R2
026E 8001 movw R16,R0
0270 CE01 movw R24,R28
0272 4096 adiw R24,16
0274 080F add R16,R24
0276 191F adc R17,R25
0278 88D3 xcall _show_name
027A .dbline 73
027A 15C0 xjmp L39
027C L44:
027C .dbline 74
027C ; case 2:show_name(&FILE[active[day+2]],6,1);break;
027C 81E0 ldi R24,1
027E 90E0 ldi R25,0
0280 9983 std y+1,R25
0282 8883 std y+0,R24
0284 26E0 ldi R18,6
0286 30E0 ldi R19,0
0288 CE01 movw R24,R28
028A 0A96 adiw R24,10
028C EA2D mov R30,R10
028E FF27 clr R31
0290 E80F add R30,R24
0292 F91F adc R31,R25
0294 2080 ldd R2,z+0
0296 80E2 ldi R24,32
0298 829D mul R24,R2
029A 8001 movw R16,R0
029C CE01 movw R24,R28
029E 4096 adiw R24,16
02A0 080F add R16,R24
02A2 191F adc R17,R25
02A4 72D3 xcall _show_name
02A6 .dbline 74
02A6 L38:
02A6 L39:
02A6 .dbline 76
02A6 ; }
02A6 ; }
02A6 L36:
02A6 .dbline 77
02A6 ; KEYBUF_NULL;
02A6 2224 clr R2
02A8 20920000 sts _keybuf,R2
02AC .dbline 77
02AC L46:
02AC .dbline 78
02AC L47:
02AC .dbline 78
02AC ; while(keybuf == NULL);
02AC 20900000 lds R2,_keybuf
02B0 2220 tst R2
02B2 E1F3 breq L46
02B4 .dbline 79
02B4 ; if(keybuf == K_UP){
02B4 822D mov R24,R2
02B6 8330 cpi R24,3
02B8 D9F4 brne L49
02BA .dbline 79
02BA .dbline 80
02BA ; if(--temp == 255){
02BA FE01 movw R30,R28
02BC E05F subi R30,240 ; addi 272
02BE FE4F sbci R31,254
02C0 8081 ldd R24,z+0
02C2 8150 subi R24,1
02C4 282E mov R2,R24
02C6 FE01 movw R30,R28
02C8 E05F subi R30,240 ; addi 272
02CA FE4F sbci R31,254
02CC 2082 std z+0,R2
02CE 8F3F cpi R24,255
02D0 79F4 brne L51
02D2 .dbline 80
02D2 .dbline 81
02D2 ; temp = 0;
02D2 0024 clr R0
02D4 FE01 movw R30,R28
02D6 E05F subi R30,240 ; addi 272
02D8 FE4F sbci R31,254
02DA 0082 std z+0,R0
02DC .dbline 82
02DC ; if(day != 0) {day -= 3;temp=2;}
02DC AA20 tst R10
02DE 41F0 breq L53
02E0 .dbline 82
02E0 .dbline 82
02E0 8A2D mov R24,R10
02E2 8350 subi R24,3
02E4 A82E mov R10,R24
02E6 .dbline 82
02E6 82E0 ldi R24,2
02E8 FE01 movw R30,R28
02EA E05F subi R30,240 ; addi 272
02EC FE4F sbci R31,254
02EE 8083 std z+0,R24
02F0 .dbline 82
02F0 L53:
02F0 .dbline 83
02F0 ; }
02F0 L51:
02F0 .dbline 84
02F0 ; }
02F0 L49:
02F0 .dbline 85
02F0 ; if(keybuf == K_DOWN){
02F0 80910000 lds R24,_keybuf
02F4 8130 cpi R24,1
02F6 C9F4 brne L55
02F8 .dbline 85
02F8 .dbline 86
02F8 ; if(move !=0){
02F8 EE20 tst R14
02FA B9F0 breq L57
02FC .dbline 86
02FC .dbline 87
02FC ; if(++temp == move){
02FC FE01 movw R30,R28
02FE E05F subi R30,240 ; addi 272
0300 FE4F sbci R31,254
0302 8081 ldd R24,z+0
0304 8F5F subi R24,255 ; addi 1
0306 282E mov R2,R24
0308 FE01 movw R30,R28
030A E05F subi R30,240 ; addi 272
030C FE4F sbci R31,254
030E 2082 std z+0,R2
0310 8E15 cp R24,R14
0312 59F4 brne L59
0314 .dbline 87
0314 .dbline 88
0314 ; temp = 0;
0314 0024 clr R0
0316 FE01 movw R30,R28
0318 E05F subi R30,240 ; addi 272
031A FE4F sbci R31,254
031C 0082 std z+0,R0
031E .dbline 89
031E ; if(move == 3) day += 3;
031E 8E2D mov R24,R14
0320 8330 cpi R24,3
0322 19F4 brne L61
0324 .dbline 89
0324 8A2D mov R24,R10
0326 8D5F subi R24,253 ; addi 3
0328 A82E mov R10,R24
032A L61:
032A .dbline 90
032A L59:
032A .dbline 90
032A ; } }
032A L57:
032A .dbline 91
032A ; }
032A L55:
032A .dbline 92
032A ; if(keybuf == K_ESC) break;
032A 80910000 lds R24,_keybuf
032E 8530 cpi R24,5
0330 09F4 brne L63
0332 .dbline 92
0332 F4C0 xjmp L16
0334 L63:
0334 .dbline 93
0334 ; if(keybuf != K_ENTER) continue;
0334 80910000 lds R24,_keybuf
0338 8430 cpi R24,4
033A 09F0 breq L65
033C .dbline 93
033C EEC0 xjmp L15
033E L65:
033E .dbline 95
033E ;
033E ; point = 0;
033E 6627 clr R22
0340 7727 clr R23
0342 .dbline 96
0342 ; point += 8*data*sizeof(FILE[0]);
0342 88E0 ldi R24,8
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -