3 Fat file system structure and definition.
5 Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
6 This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19 #include "CommonLib.h"
29 UINT16 BPB_BytsPerSec
;
31 UINT16 BPB_RsvdSecCnt
;
33 UINT16 BPB_RootEntCnt
;
43 // Fat12/16 specific field
50 CHAR8 BS_FilSysType
[8];
58 // Fat common signature - 0xAA55
61 } FAT12_16_BPB_STRUCT
;
69 UINT16 BPB_BytsPerSec
;
71 UINT16 BPB_RsvdSecCnt
;
73 UINT16 BPB_RootEntCnt
;
83 // Fat32 specific field
91 UINT8 BPB_Reserved
[12];
97 CHAR8 BS_FilSysType
[8];
100 // Boot Code and Data
105 // Fat common signature - 0xAA55
111 FAT12_16_BPB_STRUCT Fat12_16
;
112 FAT32_BPB_STRUCT Fat32
;
127 UINT8 DIR_CrtTimeTenth
;
130 UINT16 DIR_LstAccDate
;
131 UINT16 DIR_FstClusHI
;
134 UINT16 DIR_FstClusLO
;
136 } FAT_DIRECTORY_ENTRY
;
140 #define FAT_MAX_FAT12_CLUSTER 0xFF5
141 #define FAT_MAX_FAT16_CLUSTER 0xFFF5
143 #define FAT_BS_SIGNATURE 0xAA55
144 #define FAT_BS_BOOTSIG 0x29
145 #define FAT_BS_JMP1 0xEB
146 #define FAT_BS_JMP2 0xE9
147 #define FAT_FILSYSTYPE "FAT "
148 #define FAT12_FILSYSTYPE "FAT12 "
149 #define FAT16_FILSYSTYPE "FAT16 "
150 #define FAT32_FILSYSTYPE "FAT32 "