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

📄 fat.lis

📁 diy硬盘mp3的程序
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0590 11F4              brne L78
 0592                   .dbline 120
 0592 8001              movw R16,R0
 0594 53C0              xjmp L14
 0596           L78:
 0596                   .dbline 121
 0596           ;                                       Files++;        
 0596 8FA9              ldd R24,y+55
 0598 98AD              ldd R25,y+56
 059A 0196              adiw R24,1
 059C 98AF              std y+56,R25
 059E 8FAB              std y+55,R24
 05A0                   .dbline 122
 05A0           ;                                       }
 05A0 02C0              xjmp L49
 05A2           L48:
 05A2                   .dbline 123
 05A2           ;                            else LongFileName = FALSE;
 05A2 CC24              clr R12
 05A4 DD24              clr R13
 05A6           L49:
 05A6                   .dbline 124
 05A6           ;                                }
 05A6           L29:
 05A6                   .dbline 125
 05A6           L24:
 05A6                   .dbline 89
 05A6 8DA9              ldd R24,y+53
 05A8 9EA9              ldd R25,y+54
 05AA 8096              adiw R24,32
 05AC 9EAB              std y+54,R25
 05AE 8DAB              std y+53,R24
 05B0           L26:
 05B0                   .dbline 89
 05B0 20901B01          lds R2,_Boot+11
 05B4 30901C01          lds R3,_Boot+11+1
 05B8 0DA8              ldd R0,y+53
 05BA 1EA8              ldd R1,y+54
 05BC 0214              cp R0,R2
 05BE 1304              cpc R1,R3
 05C0 08F4              brsh X4
 05C2 93CE              xjmp L23
 05C4           X4:
 05C4                   .dbline 126
 05C4           L19:
 05C4                   .dbline 86
 05C4 41E0              ldi R20,1
 05C6 50E0              ldi R21,0
 05C8 60E0              ldi R22,0
 05CA 70E0              ldi R23,0
 05CC FE01              movw R30,R28
 05CE 20A4              ldd R2,z+40
 05D0 31A4              ldd R3,z+41
 05D2 42A4              ldd R4,z+42
 05D4 53A4              ldd R5,z+43
 05D6 240E              add R2,R20
 05D8 351E              adc R3,R21
 05DA 461E              adc R4,R22
 05DC 571E              adc R5,R23
 05DE 20A6              std z+40,R2
 05E0 31A6              std z+41,R3
 05E2 42A6              std z+42,R4
 05E4 53A6              std z+43,R5
 05E6           L21:
 05E6                   .dbline 86
 05E6 20901D01          lds R2,_Boot+13
 05EA 3324              clr R3
 05EC 4424              clr R4
 05EE 5524              clr R5
 05F0 FE01              movw R30,R28
 05F2 60A4              ldd R6,z+40
 05F4 71A4              ldd R7,z+41
 05F6 82A4              ldd R8,z+42
 05F8 93A4              ldd R9,z+43
 05FA 6214              cp R6,R2
 05FC 7304              cpc R7,R3
 05FE 8404              cpc R8,R4
 0600 9504              cpc R9,R5
 0602 08F4              brsh X5
 0604 4ECE              xjmp L18
 0606           X5:
 0606                   .dbline 127
 0606           ;                         }
 0606           ;                 }
 0606           ;         NextCluster = GetNextCluster(NextCluster);
 0606 01A9              ldd R16,z+49
 0608 12A9              ldd R17,z+50
 060A 23A9              ldd R18,z+51
 060C 34A9              ldd R19,z+52
 060E 94DD              xcall _GetNextCluster
 0610 FE01              movw R30,R28
 0612 01AB              std z+49,R16
 0614 12AB              std z+50,R17
 0616 23AB              std z+51,R18
 0618 34AB              std z+52,R19
 061A                   .dbline 128
 061A           ;         if (NextCluster > CLUST_RSRVD) break;
 061A 46EF              ldi R20,246
 061C 5FEF              ldi R21,255
 061E 6FEF              ldi R22,255
 0620 7FE0              ldi R23,15
 0622 21A8              ldd R2,z+49
 0624 32A8              ldd R3,z+50
 0626 43A8              ldd R4,z+51
 0628 54A8              ldd R5,z+52
 062A 4215              cp R20,R2
 062C 5305              cpc R21,R3
 062E 6405              cpc R22,R4
 0630 7505              cpc R23,R5
 0632 08F4              brsh L80
 0634                   .dbline 128
 0634 01C0              xjmp L17
 0636           L80:
 0636                   .dbline 129
 0636           L16:
 0636                   .dbline 83
 0636 21CE              xjmp L15
 0638           L17:
 0638                   .dbline 130
 0638           ;         }
 0638           ; return Files;
 0638 0FA9              ldd R16,y+55
 063A 18AD              ldd R17,y+56
 063C                   .dbline -2
 063C           L14:
 063C E996              adiw R28,57
 063E 0E940000          xcall pop_gset5
 0642 2496              adiw R28,4
 0644                   .dbline 0 ; func end
 0644 0895              ret
 0646                   .dbsym l k 9 i
 0646                   .dbsym l NextCluster 49 l
 0646                   .dbsym l LBA 45 l
 0646                   .dbsym l LinePtr 44 c
 0646                   .dbsym l i 40 l
 0646                   .dbsym r LongFileName 12 i
 0646                   .dbsym l Files 55 i
 0646                   .dbsym l Offset 53 i
 0646                   .dbsym r LongFilePtr 10 i
 0646                   .dbsym l Entry 8 X
 0646                   .dbsym r j 14 i
 0646                   .dbsym l Display 75 i
 0646                   .dbsym l Qte 73 i
 0646                   .dbsym l From 71 i
 0646                   .dbsym l Cluster 67 l
 0646                   .dbend
 0646                   .dbfunc e DisplayFiles _DisplayFiles fV
 0646           ;              i -> R22,R23
 0646           ;              j -> R10,R11
 0646           ;        LinePtr -> R20,R21
                        .even
 0646           _DisplayFiles::
 0646 0E940000          xcall push_gset3
 064A A801              movw R20,R16
 064C                   .dbline -1
 064C                   .dbline 138
 064C           ; }
 064C           ; 
 064C           ; //*************************************
 064C           ; // void DisplayFiles(unsigned int FileNum)
 064C           ; //
 064C           ; //*************************************
 064C           ; void DisplayFiles(unsigned char *LinePtr)
 064C           ; {
 064C                   .dbline 142
 064C           ; extern unsigned char RemoteTextLine[5][40];
 064C           ; int i,j;
 064C           ; 
 064C           ; if (*LinePtr == 0)
 064C FA01              movw R30,R20
 064E 2080              ldd R2,z+0
 0650 2220              tst R2
 0652 01F5              brne L83
 0654                   .dbline 143
 0654           ;    {
 0654                   .dbline 144
 0654           ;    for (i=0;i<5;i++) // Clear all FileName in the commun buffer
 0654 6627              clr R22
 0656 7727              clr R23
 0658           L85:
 0658                   .dbline 145
 0658           ;          {
 0658                   .dbline 146
 0658 AA24              clr R10
 065A BB24              clr R11
 065C           L89:
 065C                   .dbline 146
 065C 08E2              ldi R16,40
 065E 10E0              ldi R17,0
 0660 9B01              movw R18,R22
 0662 0E940000          xcall empy16s
 0666 1801              movw R2,R16
 0668 80E0              ldi R24,<_RemoteTextLine
 066A 90E0              ldi R25,>_RemoteTextLine
 066C 280E              add R2,R24
 066E 391E              adc R3,R25
 0670 F501              movw R30,R10
 0672 E20D              add R30,R2
 0674 F31D              adc R31,R3
 0676 2224              clr R2
 0678 2082              std z+0,R2
 067A           L90:
 067A                   .dbline 146
 067A C501              movw R24,R10
 067C 0196              adiw R24,1
 067E 5C01              movw R10,R24
 0680                   .dbline 146
 0680 8832              cpi R24,40
 0682 E0E0              ldi R30,0
 0684 9E07              cpc R25,R30
 0686 54F3              brlt L89
 0688                   .dbline 147
 0688           L86:
 0688                   .dbline 144
 0688 6F5F              subi R22,255  ; offset = 1
 068A 7F4F              sbci R23,255
 068C                   .dbline 144
 068C 6530              cpi R22,5
 068E E0E0              ldi R30,0
 0690 7E07              cpc R23,R30
 0692 14F3              brlt L85
 0694                   .dbline 148
 0694           ;          for (j=0;j<40;j++) RemoteTextLine[i][j] = 0x00;
 0694           ;          }
 0694           ;    }
 0694           L83:
 0694                   .dbline 150
 0694           ; 
 0694           ; File.Name[39] = 0x00;
 0694 2224              clr R2
 0696 20922B00          sts _File+39,R2
 069A                   .dbline 151
 069A 6627              clr R22
 069C 7727              clr R23
 069E           L94:
 069E                   .dbline 151
 069E FA01              movw R30,R20
 06A0 2080              ldd R2,z+0
 06A2 88E2              ldi R24,40
 06A4 829D              mul R24,R2
 06A6 1001              movw R2,R0
 06A8 80E0              ldi R24,<_RemoteTextLine
 06AA 90E0              ldi R25,>_RemoteTextLine
 06AC 280E              add R2,R24
 06AE 391E              adc R3,R25
 06B0 FB01              movw R30,R22
 06B2 E20D              add R30,R2
 06B4 F31D              adc R31,R3
 06B6 80E0              ldi R24,<_File
 06B8 90E0              ldi R25,>_File
 06BA DB01              movw R26,R22
 06BC A80F              add R26,R24
 06BE B91F              adc R27,R25
 06C0 2C90              ld R2,x
 06C2 2082              std z+0,R2
 06C4           L95:
 06C4                   .dbline 151
 06C4           ; for (i=0;i<40;i++) RemoteTextLine[*LinePtr][i] = File.Name[i];
 06C4 6F5F              subi R22,255  ; offset = 1
 06C6 7F4F              sbci R23,255
 06C8                   .dbline 151
 06C8 6832              cpi R22,40
 06CA E0E0              ldi R30,0
 06CC 7E07              cpc R23,R30
 06CE 3CF3              brlt L94
 06D0                   .dbline 152
 06D0           ; (*LinePtr)++;
 06D0 FA01              movw R30,R20
 06D2 8081              ldd R24,z+0
 06D4 8F5F              subi R24,255    ; addi 1
 06D6 8083              std z+0,R24
 06D8                   .dbline -2
 06D8                   .dbline 153
 06D8           ; }
 06D8           L82:
 06D8 0E940000          xcall pop_gset3
 06DC                   .dbline 0 ; func end
 06DC 0895              ret
 06DE                   .dbsym r i 22 I
 06DE                   .dbsym r j 10 I
 06DE                   .dbsym r LinePtr 20 pc
 06DE                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile C:\DATA\MP3\Player\Code2\fat.c
 0000           _FirstDataSector::
 0000                   .blkb 4
 0004                   .dbsym e FirstDataSector _FirstDataSector l
 0004           _File::
 0004                   .blkb 268
 0110                   .dbsym e File _File X
 0110           _Boot::
 0110                   .blkb 52
 0144                   .dbsym e Boot _Boot X
 0144           _Part::
 0144                   .blkb 16
 0154                   .dbsym e Part _Part X

⌨️ 快捷键说明

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