package body FS.FILO.Dev is

   procedure Read
      (Buffer  : in out Buffer_Type;
       Offset  : in     Natural;
       Success :    out Boolean)
   is
      --Sector_Size : constant Natural := 512;
      --Sector      : constant Interfaces.C.unsigned_long := Offset / Sector_Size;
      --Byte_Offset : constant Interfaces.C.unsigned_long := Offset rem Sector_Size;
      --Byte_Len    : constant Interfaces.C.unsigned_long := Buffer'Length;
      --function To_Bool(Item : Interfaces.C.int) return Bool is
      --   (if Item = 0 then False else True);
   begin
      null;
      --Success := To_Bool (C_devread (Sector, Byte_Offset, Byte_Len, Buffer'Address));
   end Read;

end FS.FILO.Dev;
