⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lis

📁 diy硬盘mp3的程序
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 079C 7383              std z+3,R23
 079E E052              subi R30,32
 07A0 F240              sbci R31,2
 07A2                   .dbline 253
 07A2           ; NextCluster = File.FirstClust;
 07A2 40900601          lds R4,_File+260+2
 07A6 50900701          lds R5,_File+260+2+1
 07AA 20900401          lds R2,_File+260
 07AE 30900501          lds R3,_File+260+1
 07B2 E45E              subi R30,228  ; addi 540
 07B4 FD4F              sbci R31,253
 07B6 2082              std z+0,R2
 07B8 3182              std z+1,R3
 07BA 4282              std z+2,R4
 07BC 5382              std z+3,R5
 07BE 3DC1              xjmp L89
 07C0           L88:
 07C0                   .dbline 255
 07C0           ; while (1)
 07C0           ;         {
 07C0                   .dbline 256
 07C0           ;         LBA = Clust2LBA(NextCluster);
 07C0 FE01              movw R30,R28
 07C2 E45E              subi R30,228  ; addi 540
 07C4 FD4F              sbci R31,253
 07C6 0081              ldd R16,z+0
 07C8 1181              ldd R17,z+1
 07CA 2281              ldd R18,z+2
 07CC 3381              ldd R19,z+3
 07CE 0E940000          xcall _Clust2LBA
 07D2 FE01              movw R30,R28
 07D4 E85E              subi R30,232  ; addi 536
 07D6 FD4F              sbci R31,253
 07D8 0083              std z+0,R16
 07DA 1183              std z+1,R17
 07DC 2283              std z+2,R18
 07DE 3383              std z+3,R19
 07E0 E851              subi R30,24
 07E2 F240              sbci R31,2
 07E4                   .dbline 257
 07E4           ;         for (i=0;i<Boot.SecPerClust;i++)
 07E4 40E0              ldi R20,0
 07E6 50E0              ldi R21,0
 07E8 60E0              ldi R22,0
 07EA 70E0              ldi R23,0
 07EC EC5E              subi R30,236  ; addi 532
 07EE FD4F              sbci R31,253
 07F0 4083              std z+0,R20
 07F2 5183              std z+1,R21
 07F4 6283              std z+2,R22
 07F6 7383              std z+3,R23
 07F8 A7C0              xjmp L94
 07FA           L91:
 07FA                   .dbline 258
 07FA           ;                 {
 07FA                   .dbline 259
 07FA           ;                 ata_read_sector_byte(0, LBA+i, 0, 512, (unsigned char*)&buffer);
 07FA CE01              movw R24,R28
 07FC 4496              adiw R24,20
 07FE 9F83              std y+7,R25
 0800 8E83              std y+6,R24
 0802 80E0              ldi R24,512
 0804 92E0              ldi R25,2
 0806 9D83              std y+5,R25
 0808 8C83              std y+4,R24
 080A 2224              clr R2
 080C 3324              clr R3
 080E 3B82              std y+3,R3
 0810 2A82              std y+2,R2
 0812 FE01              movw R30,R28
 0814 EC5E              subi R30,236  ; addi 532
 0816 FD4F              sbci R31,253
 0818 2080              ldd R2,z+0
 081A 3180              ldd R3,z+1
 081C 4280              ldd R4,z+2
 081E 5380              ldd R5,z+3
 0820 E451              subi R30,20
 0822 F240              sbci R31,2
 0824 E85E              subi R30,232  ; addi 536
 0826 FD4F              sbci R31,253
 0828 6080              ldd R6,z+0
 082A 7180              ldd R7,z+1
 082C 8280              ldd R8,z+2
 082E 9380              ldd R9,z+3
 0830 620C              add R6,R2
 0832 731C              adc R7,R3
 0834 841C              adc R8,R4
 0836 951C              adc R9,R5
 0838 8882              std y+0,R8
 083A 9982              std y+1,R9
 083C 9301              movw R18,R6
 083E 0027              clr R16
 0840 0E940000          xcall _ata_read_sector_byte
 0844                   .dbline 260
 0844           ;                 for (j=0;j<Boot.BytesPerSec;j=j+32)
 0844 40E0              ldi R20,0
 0846 50E0              ldi R21,0
 0848 60E0              ldi R22,0
 084A 70E0              ldi R23,0
 084C FE01              movw R30,R28
 084E 408B              std z+16,R20
 0850 518B              std z+17,R21
 0852 628B              std z+18,R22
 0854 738B              std z+19,R23
 0856 50C0              xjmp L99
 0858           L96:
 0858                   .dbline 261
 0858           ;                         {
 0858                   .dbline 262
 0858           ;                         TimeOut = 0;
 0858 40E0              ldi R20,0
 085A 50E0              ldi R21,0
 085C 60E0              ldi R22,0
 085E 70E0              ldi R23,0
 0860 FE01              movw R30,R28
 0862 4087              std z+8,R20
 0864 5187              std z+9,R21
 0866 6287              std z+10,R22
 0868 7387              std z+11,R23
 086A 29C0              xjmp L102
 086C           L101:
 086C                   .dbline 264
 086C           ;                         while (!(PORT_MP3_IN & DREQ))
 086C           ;                                       {
 086C                   .dbline 265
 086C           ;                                       WDR();
 086C A895              wdr
 086E                   .dbline 266
 086E           ;                                       if (DoTask((int)Percent) == ABORT) return 0;
 086E FE01              movw R30,R28
 0870 0485              ldd R16,z+12
 0872 1585              ldd R17,z+13
 0874 F1D0              xcall _DoTask
 0876 0130              cpi R16,1
 0878 E0E0              ldi R30,0
 087A 1E07              cpc R17,R30
 087C 19F4              brne L104
 087E                   .dbline 266
 087E 0027              clr R16
 0880 1127              clr R17
 0882 DEC0              xjmp L86
 0884           L104:
 0884                   .dbline 267
 0884           ;                                       TimeOut++;
 0884 41E0              ldi R20,1
 0886 50E0              ldi R21,0
 0888 60E0              ldi R22,0
 088A 70E0              ldi R23,0
 088C FE01              movw R30,R28
 088E 2084              ldd R2,z+8
 0890 3184              ldd R3,z+9
 0892 4284              ldd R4,z+10
 0894 5384              ldd R5,z+11
 0896 240E              add R2,R20
 0898 351E              adc R3,R21
 089A 461E              adc R4,R22
 089C 571E              adc R5,R23
 089E 2086              std z+8,R2
 08A0 3186              std z+9,R3
 08A2 4286              std z+10,R4
 08A4 5386              std z+11,R5
 08A6                   .dbline 268
 08A6           ;                                       if (TimeOut > 100000) return 0; // VS1001 is jam
 08A6 40EA              ldi R20,160
 08A8 56E8              ldi R21,134
 08AA 61E0              ldi R22,1
 08AC 70E0              ldi R23,0
 08AE 4215              cp R20,R2
 08B0 5305              cpc R21,R3
 08B2 6405              cpc R22,R4
 08B4 7505              cpc R23,R5
 08B6 18F4              brsh L106
 08B8                   .dbline 268
 08B8 0027              clr R16
 08BA 1127              clr R17
 08BC C1C0              xjmp L86
 08BE           L106:
 08BE                   .dbline 269
 08BE           L102:
 08BE                   .dbline 263
 08BE B79B              sbis 0x16,7
 08C0 D5CF              rjmp L101
 08C2                   .dbline 270
 08C2 20E2              ldi R18,32
 08C4 CE01              movw R24,R28
 08C6 4496              adiw R24,20
 08C8 FE01              movw R30,R28
 08CA 0089              ldd R16,z+16
 08CC 1189              ldd R17,z+17
 08CE 080F              add R16,R24
 08D0 191F              adc R17,R25
 08D2 0E940000          xcall _VS1001_Stream
 08D6                   .dbline 271
 08D6           L97:
 08D6                   .dbline 260
 08D6 40E2              ldi R20,32
 08D8 50E0              ldi R21,0
 08DA 60E0              ldi R22,0
 08DC 70E0              ldi R23,0
 08DE FE01              movw R30,R28
 08E0 2088              ldd R2,z+16
 08E2 3188              ldd R3,z+17
 08E4 4288              ldd R4,z+18
 08E6 5388              ldd R5,z+19
 08E8 240E              add R2,R20
 08EA 351E              adc R3,R21
 08EC 461E              adc R4,R22
 08EE 571E              adc R5,R23
 08F0 208A              std z+16,R2
 08F2 318A              std z+17,R3
 08F4 428A              std z+18,R4
 08F6 538A              std z+19,R5
 08F8           L99:
 08F8                   .dbline 260
 08F8 20900B00          lds R2,_Boot+11
 08FC 30900C00          lds R3,_Boot+11+1
 0900 4424              clr R4
 0902 5524              clr R5
 0904 FE01              movw R30,R28
 0906 6088              ldd R6,z+16
 0908 7188              ldd R7,z+17
 090A 8288              ldd R8,z+18
 090C 9388              ldd R9,z+19
 090E 6214              cp R6,R2
 0910 7304              cpc R7,R3
 0912 8404              cpc R8,R4
 0914 9504              cpc R9,R5
 0916 08F4              brsh X13
 0918 9FCF              xjmp L96
 091A           X13:
 091A                   .dbline 272
 091A           L92:
 091A                   .dbline 257
 091A 41E0              ldi R20,1
 091C 50E0              ldi R21,0
 091E 60E0              ldi R22,0
 0920 70E0              ldi R23,0
 0922 FE01              movw R30,R28
 0924 EC5E              subi R30,236  ; addi 532
 0926 FD4F              sbci R31,253
 0928 2080              ldd R2,z+0
 092A 3180              ldd R3,z+1
 092C 4280              ldd R4,z+2
 092E 5380              ldd R5,z+3
 0930 E451              subi R30,20
 0932 F240              sbci R31,2
 0934 240E              add R2,R20
 0936 351E              adc R3,R21
 0938 461E              adc R4,R22
 093A 571E              adc R5,R23
 093C EC5E              subi R30,236  ; addi 532
 093E FD4F              sbci R31,253
 0940 2082              std z+0,R2
 0942 3182              std z+1,R3
 0944 4282              std z+2,R4
 0946 5382              std z+3,R5
 0948           L94:
 0948                   .dbline 257
 0948 20900D00          lds R2,_Boot+13
 094C 3324              clr R3
 094E 4424              clr R4
 0950 5524              clr R5
 0952 FE01              movw R30,R28
 0954 EC5E              subi R30,236  ; addi 532
 0956 FD4F              sbci R31,253
 0958 6080              ldd R6,z+0
 095A 7180              ldd R7,z+1
 095C 8280              ldd R8,z+2
 095E 9380              ldd R9,z+3
 0960 6214              cp R6,R2
 0962 7304              cpc R7,R3
 0964 8404              cpc R8,R4
 0966 9504              cpc R9,R5
 0968 08F4              brsh X14
 096A 47CF              xjmp L91
 096C           X14:
 096C                   .dbline 273
 096C           ;                                       }       
 096C           ;                         VS1001_Stream(&buffer[j],32);
 096C           ;                         }
 096C           ;                 }
 096C           ;         ByteSend += (Boot.BytesPerSec * Boot.SecPerClust);
 096C 222D              mov R18,R2
 096E 3327              clr R19
 0970 00910B00          lds R16,_Boot+11
 0974 10910C00          lds R17,_Boot+11+1
 0978 0E940000          xcall empy16s
 097C 1801              movw R2,R16
 097E 4424              clr R4
 0980 5524              clr R5
 0982 FE01              movw R30,R28
 0984 E05E              subi R30,224  ; addi 544
 0986 FD4F              sbci R31,253
 0988 6080              ldd R6,z+0
 098A 7180              ldd R7,z+1
 098C 8280              ldd R8,z+2
 098E 9380              ldd R9,z+3
 0990 E052              subi R30,32
 0992 F240              sbci R31,2
 0994 620C              add R6,R2
 0996 731C              adc R7,R3
 0998 841C              adc R8,R4
 099A 951C              adc R9,R5
 099C E05E              subi R30,224  ; addi 544
 099E FD4F              sbci R31,253
 09A0 6082              std z+0,R6
 09A2 7182              std z+1,R7
 09A4 8282              std z+2,R8
 09A6 9382              std z+3,R9
 09A8                   .dbline 274
 09A8           ;         Percent = (ByteSend / (File.FileSize / 100));
 09A8 44E6              ldi R20,100
 09AA 50E0              ldi R21,0
 09AC 60E0              ldi R22,0
 09AE 70E0              ldi R23,0
 09B0 40900A01          lds R4,_File+264+2
 09B4 50900B01          lds R5,_File+264+2+1
 09B8 20900801          lds R2,_File+264
 09BC 30900901          lds R3,_File+264+1
 09C0 7A93              st -y,R23
 09C2 6A93              st -y,R22
 09C4 5A93              st -y,R21
 09C6 4A93              st -y,R20
 09C8 8101              movw R16,R2
 09CA 9201              movw R18,R4
 09CC 0E940000          xcall div32u
 09D0 FE01              movw R30,R28
 09D2 E05E              subi R30,224  ; addi 544
 09D4 FD4F              sbci R31,253
 09D6 2080              ldd R2,z+0
 09D8 3180              ldd R3,z+1
 09DA 4280              ldd R4,z+2
 09DC 5380              ldd R5,z+3
 09DE 3A93              st -y,R19
 09E0 2A93              st -y,R18
 09E2 1A93              st -y,R17
 09E4 0A93              st -y,R16
 09E6 8101              movw R16,R2
 09E8 9201              movw R18,R4
 09EA 0E940000

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -