// ext2.cpp // ext2 filesystem driver for HOS // Author: Josh Holtrop // Date: 05/10/05 // Modified: 05/10/05 #define _HOS_CPP_ _HOS_CPP_ extern "C" { #include "display/kout.h" } #include "ext2.h" Ext2fs::Ext2fs(device_t dev) { myDevice = dev; if (block_read(DEV_MAJOR(dev), DEV_MINOR(dev), 2, 2, &mySuper) < 1024) { myError = -1; return; } if (mySuper.s_magic != EXT2_MAGIC) { myError = -2; return; } myError = 0; mySuperDirty = 0; kprintf("Device: %d\n", myDevice); } Ext2fs::~Ext2fs() { if (mySuperDirty) block_write(DEV_MAJOR(myDevice), DEV_MINOR(myDevice), 2, 2, &mySuper); }