📄 main.lis
字号:
02B8 3F80 ldd R3,y+7
02BA 4884 ldd R4,y+8
02BC 5984 ldd R5,y+9
02BE 240E add R2,R20
02C0 351E adc R3,R21
02C2 461E adc R4,R22
02C4 571E adc R5,R23
02C6 2E82 std y+6,R2
02C8 3F82 std y+7,R3
02CA 4886 std y+8,R4
02CC 5986 std y+9,R5
02CE .dbline 139
02CE ; }
02CE L42:
02CE L40:
02CE .dbline 141
02CE ;
02CE ; if(size_buf>=fsize[music_num]-64)
02CE 80E0 ldi R24,<_fsize
02D0 90E0 ldi R25,>_fsize
02D2 ED89 ldd R30,y+21
02D4 FF27 clr R31
02D6 EE0F lsl R30
02D8 FF1F rol R31
02DA EE0F lsl R30
02DC FF1F rol R31
02DE E80F add R30,R24
02E0 F91F adc R31,R25
02E2 2080 ldd R2,z+0
02E4 3180 ldd R3,z+1
02E6 4280 ldd R4,z+2
02E8 5380 ldd R5,z+3
02EA 40E4 ldi R20,64
02EC 50E0 ldi R21,0
02EE 60E0 ldi R22,0
02F0 70E0 ldi R23,0
02F2 241A sub R2,R20
02F4 350A sbc R3,R21
02F6 460A sbc R4,R22
02F8 570A sbc R5,R23
02FA 6E80 ldd R6,y+6
02FC 7F80 ldd R7,y+7
02FE 8884 ldd R8,y+8
0300 9984 ldd R9,y+9
0302 6214 cp R6,R2
0304 7304 cpc R7,R3
0306 8404 cpc R8,R4
0308 9504 cpc R9,R5
030A A0F0 brlo L48
030C X23:
030C .dbline 142
030C ; {
030C .dbline 143
030C ; data_pointer=512;
030C 80E0 ldi R24,512
030E 92E0 ldi R25,2
0310 9B8B std y+19,R25
0312 8A8B std y+18,R24
0314 .dbline 144
0314 ; i=8;
0314 48E0 ldi R20,8
0316 50E0 ldi R21,0
0318 60E0 ldi R22,0
031A 70E0 ldi R23,0
031C 4A87 std y+10,R20
031E 5B87 std y+11,R21
0320 6C87 std y+12,R22
0322 7D87 std y+13,R23
0324 .dbline 145
0324 ; size_buf=0;
0324 40E0 ldi R20,0
0326 50E0 ldi R21,0
0328 60E0 ldi R22,0
032A 70E0 ldi R23,0
032C 4E83 std y+6,R20
032E 5F83 std y+7,R21
0330 6887 std y+8,R22
0332 7987 std y+9,R23
0334 .dbline 146
0334 ; }
0334 L48:
0334 .dbline 148
0334 ;
0334 ; }while(data_pointer<511);
0334 L14:
0334 .dbline 148
0334 8A89 ldd R24,y+18
0336 9B89 ldd R25,y+19
0338 8F3F cpi R24,255
033A E1E0 ldi R30,1
033C 9E07 cpc R25,R30
033E 08F4 brsh X36
0340 D8CE xjmp L13
0342 X36:
0342 X24:
0342 .dbline 150
0342 ;
0342 ; data_pointer=0;
0342 0024 clr R0
0344 1124 clr R1
0346 1B8A std y+19,R1
0348 0A8A std y+18,R0
034A .dbline 152
034A ;
034A ; }
034A L10:
034A .dbline 85
034A 41E0 ldi R20,1
034C 50E0 ldi R21,0
034E 60E0 ldi R22,0
0350 70E0 ldi R23,0
0352 2A84 ldd R2,y+10
0354 3B84 ldd R3,y+11
0356 4C84 ldd R4,y+12
0358 5D84 ldd R5,y+13
035A 240E add R2,R20
035C 351E adc R3,R21
035E 461E adc R4,R22
0360 571E adc R5,R23
0362 2A86 std y+10,R2
0364 3B86 std y+11,R3
0366 4C86 std y+12,R4
0368 5D86 std y+13,R5
036A L12:
036A .dbline 85
036A 48E0 ldi R20,8
036C 50E0 ldi R21,0
036E 60E0 ldi R22,0
0370 70E0 ldi R23,0
0372 2A84 ldd R2,y+10
0374 3B84 ldd R3,y+11
0376 4C84 ldd R4,y+12
0378 5D84 ldd R5,y+13
037A 2416 cp R2,R20
037C 3506 cpc R3,R21
037E 4606 cpc R4,R22
0380 5706 cpc R5,R23
0382 08F4 brsh X37
0384 89CE xjmp L9
0386 X37:
0386 X25:
0386 .dbline 155
0386 ;
0386 ; //---------- 下一簇 ------------//
0386 ; num = FatNextCluster(num);
0386 0E85 ldd R16,y+14
0388 1F85 ldd R17,y+15
038A 2889 ldd R18,y+16
038C 3989 ldd R19,y+17
038E 0E940000 xcall _FatNextCluster
0392 0E87 std y+14,R16
0394 1F87 std y+15,R17
0396 288B std y+16,R18
0398 398B std y+17,R19
039A .dbline 157
039A ;
039A ; if(num==CLUST_EOFE||music_next!=0||music_last!=0)
039A 4FEF ldi R20,255
039C 5FEF ldi R21,255
039E 6FEF ldi R22,255
03A0 7FEF ldi R23,255
03A2 2E84 ldd R2,y+14
03A4 3F84 ldd R3,y+15
03A6 4888 ldd R4,y+16
03A8 5988 ldd R5,y+17
03AA 2416 cp R2,R20
03AC 3506 cpc R3,R21
03AE 4606 cpc R4,R22
03B0 5706 cpc R5,R23
03B2 21F0 breq L53
03B4 X26:
03B4 CC20 tst R12
03B6 11F4 brne L53
03B8 X27:
03B8 EE20 tst R14
03BA 99F1 breq L50
03BC X28:
03BC L53:
03BC .dbline 158
03BC ; {
03BC .dbline 159
03BC ; if(music_last!=0)
03BC EE20 tst R14
03BE 61F0 breq L54
03C0 X29:
03C0 .dbline 160
03C0 ; {
03C0 .dbline 161
03C0 ; if(music_num>0)music_num--;
03C0 80E0 ldi R24,0
03C2 0D88 ldd R0,y+21
03C4 8015 cp R24,R0
03C6 18F4 brsh L56
03C8 X30:
03C8 .dbline 161
03C8 0A94 dec R0
03CA 0D8A std y+21,R0
03CC 10C0 xjmp L55
03CE L56:
03CE .dbline 162
03CE ; else music_num = fcount-1;
03CE 80910000 lds R24,_fcount
03D2 8150 subi R24,1
03D4 8D8B std y+21,R24
03D6 .dbline 163
03D6 ; }
03D6 0BC0 xjmp L55
03D8 L54:
03D8 .dbline 166
03D8 ;
03D8 ; else
03D8 ; {
03D8 .dbline 167
03D8 ; if(music_num<fcount-1)music_num++;
03D8 80910000 lds R24,_fcount
03DC 8150 subi R24,1
03DE 0D88 ldd R0,y+21
03E0 0816 cp R0,R24
03E2 18F4 brsh L58
03E4 X31:
03E4 .dbline 167
03E4 0394 inc R0
03E6 0D8A std y+21,R0
03E8 02C0 xjmp L59
03EA L58:
03EA .dbline 168
03EA ; else music_num=0;
03EA 0024 clr R0
03EC 0D8A std y+21,R0
03EE L59:
03EE .dbline 169
03EE ; }
03EE L55:
03EE .dbline 171
03EE ;
03EE ; num = fclust[music_num];
03EE 80E0 ldi R24,<_fclust
03F0 90E0 ldi R25,>_fclust
03F2 ED89 ldd R30,y+21
03F4 FF27 clr R31
03F6 EE0F lsl R30
03F8 FF1F rol R31
03FA EE0F lsl R30
03FC FF1F rol R31
03FE E80F add R30,R24
0400 F91F adc R31,R25
0402 2080 ldd R2,z+0
0404 3180 ldd R3,z+1
0406 4280 ldd R4,z+2
0408 5380 ldd R5,z+3
040A 2E86 std y+14,R2
040C 3F86 std y+15,R3
040E 488A std y+16,R4
0410 598A std y+17,R5
0412 .dbline 172
0412 ; play_flag=1;
0412 0024 clr R0
0414 0394 inc R0
0416 0C8A std y+20,R0
0418 .dbline 173
0418 ; music_next = 0;
0418 CC24 clr R12
041A .dbline 174
041A ; music_last = 0;
041A EE24 clr R14
041C .dbline 175
041C ; key_num=0;
041C 2224 clr R2
041E 20920000 sts _key_num,R2
0422 .dbline 176
0422 ; }
0422 L50:
0422 .dbline 178
0422 ;
0422 ; }
0422 L7:
0422 .dbline 83
0422 31CE xjmp L6
0424 X32:
0424 .dbline -2
0424 L5:
0424 .dbline 0 ; func end
0424 6696 adiw R28,22
0426 0C940000 xjmp pop_xgsetF0FC
042A .dbsym l num 14 l
042A .dbsym l music_num 21 c
042A .dbsym r music_last 14 c
042A .dbsym r music_next 12 c
042A .dbsym l play_flag 20 c
042A .dbsym l i 10 l
042A .dbsym l size_buf 6 l
042A .dbsym r vol_flag 10 c
042A .dbsym l n 2 l
042A .dbsym l data_pointer 18 i
042A .dbend
042A ;
042A ; }
042A ;
042A ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -