KallistiOS git master
Independent SDK for the Sega Dreamcast
Loading...
Searching...
No Matches

FAT 12, 16, and 32-bit support for KOS's VFS. More...

Modules

 Mount Flags
 Mount flags for fs_fat.
 

Files

file  fs_fat.h
 VFS interface for a FAT filesystem.
 

Functions

int fs_fat_init (void)
 Initialize fs_fat.
 
int fs_fat_shutdown (void)
 Shut down fs_fat.
 
int fs_fat_mount (const char *mp, kos_blockdev_t *dev, uint32_t flags)
 Mount a FAT filesystem in the VFS.
 
int fs_fat_unmount (const char *mp)
 Unmount a FAT filesystem from the VFS.
 
int fs_fat_sync (const char *mp)
 Sync a FAT filesystem, flushing all pending writes to the block device.
 

Detailed Description

FAT 12, 16, and 32-bit support for KOS's VFS.

Function Documentation

◆ fs_fat_init()

int fs_fat_init ( void  )

Initialize fs_fat.

This function initializes fs_fat, preparing various internal structures for use.

Return values
0On success. No error conditions currently defined.

◆ fs_fat_mount()

int fs_fat_mount ( const char *  mp,
kos_blockdev_t dev,
uint32_t  flags 
)

Mount a FAT filesystem in the VFS.

This function mounts an fat filesystem to the specified mount point on the VFS. This function will detect whether or not an FAT filesystem exists on the given block device and mount it only if there is actually an FAT filesystem.

Parameters
mpThe path to mount the filesystem at.
devThe block device containing the filesystem.
flagsMount flags. Bitwise OR of values from fat_mount_flags
Return values
0On success.
-1On error.

◆ fs_fat_shutdown()

int fs_fat_shutdown ( void  )

Shut down fs_fat.

This function shuts down fs_fat, basically undoing what fs_fat_init() did.

Return values
0On success. No error conditions currently defined.

◆ fs_fat_sync()

int fs_fat_sync ( const char *  mp)

Sync a FAT filesystem, flushing all pending writes to the block device.

This function completes all pending writes on the filesystem, making sure all data and metadata are in a consistent state on the block device. As both inode and block writes are normally postponed until they are either evicted from the cache or the filesystem is unmounted, doing this periodically may be a good idea if there is a chance that the filesystem will not be unmounted cleanly.

Note
This function has no effect if the filesystem was mounted read-only.
Parameters
mpThe mount point of the filesystem to be synced.
Return values
0On success.
-1On error.

◆ fs_fat_unmount()

int fs_fat_unmount ( const char *  mp)

Unmount a FAT filesystem from the VFS.

This function unmoutns an FAT filesystem that was previously mounted by the fs_fat_mount() function.

Parameters
mpThe mount point of the filesystem to be unmounted.
Return values
0On success.
-1On error.