FS_LoadArchive


C Specification

#include <nitro/fs.h>

BOOL FS_LoadArchive(
    FSArchive               *p_arc,
    u32                     base, 
    u32                     fat, 
    u32                     fat_size, 
    u32                     fnt, 
    u32                     fnt_size, 
    FS_ARCHIVE_READ_FUNC    read_func, 
    FS_ARCHIVE_WRITE_FUNC   write_func);
    

Description

Loads the archive to the file system based on the specified implementation.
The archive name must have already been registered by the FS_RegisterArchiveName function.

Based on the given combination of arguments, the file system assumes the archive will behave as follows:

Once this function ends successfully, a callback in the file system accesses the archive.

A loaded archive can be unloaded with the FS_UnloadArchive function.

The archive takes the valid state in the file system when this function ends successfully as long as it has not explicitly suspended by FS_SuspendArchive before FS_LoadArchive runs.

Arguments

p_arc Address of the FSArchive structure
base The base offset value to the archive-inherent address space
This value is obtained by the FS_GetArchiveBase function to make archive implementation easier.
fat FAT starting-position offset to the archive-inherent address space
fat_size The archive's FAT size in bytes
fnt FNT starting-position offset to the archive-inherent address space
fnt_size The archive's FNT size in bytes
read_func The callback function for accessing archive-inherent address space for reading
write_func The callback function for accessing archive-inherent address space for writing

Return Values

TRUE if the archive is correctly loaded in the file system. FALSE otherwise.

See Also

FSArchive, FS_ARCHIVE_NAME_LEN_MAX, FS_ReleaseArchiveName, FS_UnloadArchive

Revision History

11/02/2004 Corrected a link.
06/30/2004 Initial version.