📄 fat32readfile.lst
字号:
C51 COMPILER V7.50 FAT32READFILE 07/13/2005 11:16:31 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE FAT32READFILE
OBJECT MODULE PLACED IN FAT32READFILE.OBJ
COMPILER INVOKED BY: e:\Keil\C51\BIN\C51.EXE FAT32READFILE.C BROWSE DEBUG OBJECTEXTEND
line level source
1 #ifndef _FAT32_DEFINE
2 #include "FAT32.c"
3 #endif
4
5 WORD FAT32ReadFile(BYTE fp);
6
7 WORD FAT32ReadFile(BYTE fp)
8 {
9 1 register WORD tmp;
10 1
11 1 if (FCB[fp].ByteCnt==FCB[fp].Size) return(0);
12 1 else
13 1 {
14 2 FCB[fp].ByteCnt+=512;
15 2 if (FCB[fp].ByteCnt<=FCB[fp].Size) tmp=512;
16 2 else
17 2 {
18 3 FCB[fp].ByteCnt-=512;
19 3 tmp=FCB[fp].Size-FCB[fp].ByteCnt;
20 3 FCB[fp].ByteCnt=FCB[fp].Size;
21 3 }
22 2
23 2 if (FCB[fp].ClusSecCnt==FAT32.SecPerClus) //读下一簇
24 2 {
25 3 FCB[fp].LastCluster=FAT32NextCluster(FCB[fp].LastCluster);
26 3 if (FCB[fp].LastCluster==0x0fffffff) return(0);
27 3 ReadDiskSector(ClusterToSector(FCB[fp].LastCluster));
28 3 FCB[fp].ClusSecCnt=1;
29 3 }
30 2 else if (FCB[fp].ClusSecCnt==0) //读第一簇
31 2 {
32 3 ReadDiskSector(ClusterToSector(FCB[fp].LastCluster));
33 3 FCB[fp].ClusSecCnt++;
34 3 }
35 2 else //读当前簇下一扇区
36 2 {
37 3 ReadDiskSector(ClusterToSector(FCB[fp].LastCluster)+FCB[fp].ClusSecCnt);
38 3 FCB[fp].ClusSecCnt++;
39 3 }
40 2 }
41 1 return(tmp);
42 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 833 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 3
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -