- 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
		
			
				
	
	
		
			20 lines
		
	
	
		
			639 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			639 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| #pragma once
 | |
| #include <stdint-gcc.h>
 | |
| #include "../../../CoreLib/Path.h"
 | |
| #include "StorageTypes.h"
 | |
|  class VirtualFileSystem
 | |
|  {
 | |
|  public:
 | |
|      static void initialize();
 | |
|      static void Mount(PFS fs, unsigned int DeviceID);
 | |
|      static void Unmount(unsigned int DeviceID);
 | |
|      static FILE OpenFile(const char* path);
 | |
|      static void RegisterPartition(PTR_PARTITION partition);
 | |
| 
 | |
|  private:
 | |
|      static const unsigned int DEVICE_MAX = 26;
 | |
|      static const unsigned int PARTITION_MAX = 4 * DEVICE_MAX;
 | |
|      static PFS _filesystems[DEVICE_MAX];
 | |
|      static unsigned int num_partitions;
 | |
|      static PTR_PARTITION _partitions [PARTITION_MAX];
 | |
|  }; |