Nigel
50bf952a49
- Added boot device info parsing to the kernel - Added a pointer in the kernel to our pre-kernel BootInfo structure - Created a layout for the FAT driver - Created a layout for the virtual filesystem - Separated IDE driver from the basic atapio driver. This will ensure we are not using one or the other - The create_harddrive shell script will now actually build a harddrive image of the kernel - The virtual filesystem initializes and creates a filesystem structure for every FAT16 partition in the master boot record
37 lines
946 B
C
37 lines
946 B
C
#pragma once
|
|
#include <stdint-gcc.h>
|
|
|
|
struct DirectoryEntry {
|
|
uint8_t filename [8];
|
|
uint8_t Extension [3];
|
|
uint8_t attribute;
|
|
uint8_t Reserved;
|
|
uint8_t creation; // Creation in tenths of a second
|
|
uint16_t CreationTime; // Time Created NOTE: Multiply the seconds by 2
|
|
uint16_t CreationDate; // Date Created
|
|
uint16_t LastAccessDate;
|
|
uint16_t ReservedFAT32;
|
|
uint16_t LastWriteTime;
|
|
uint16_t LastWriteDate;
|
|
uint16_t StartingCluster;
|
|
uint32_t FilesizeInBytes;
|
|
|
|
}__attribute__((packed));
|
|
|
|
|
|
|
|
typedef struct _DIRECTORY{
|
|
uint8_t Filename[8];
|
|
uint8_t Ext[3];
|
|
uint8_t Attrib;
|
|
uint8_t Reserved;
|
|
uint8_t TimeCreatedMs;
|
|
uint16_t TimeCreated;
|
|
uint16_t DateCreated;
|
|
uint16_t DateLastAccessed;
|
|
uint16_t FirstClusterHiBytes;
|
|
uint16_t LastModTime;
|
|
uint16_t LastModDate;
|
|
uint16_t FirstCluster;
|
|
uint32_t FileSize;
|
|
}__attribute__((packed)) DIRECTORY, *PDIRECTORY; |