# ROM ファイルシステム(FS)API 機能一覧

### 初期化

FS_Init |  | ROM ファイルシステムを初期化します。
FS_InitFatDriver |  | FATドライバを初期化します。
FS_IsAvailable |  | ROM ファイルシステムが初期化されているか判定します。
FS_End |  | ROM ファイルシステムを終了します。
FS_SetDefaultDMA |  | 使用するDMA番号を設定します。
FS_SetCurrentDirectory |  | カレントディレクトリを設定します。
FS_ForceToEnableLatencyEmulation |  | 本体NANDメモリやSDカードデバイスが劣化した時の動作を擬似的に再現させます。
FS_LoadTable |  | 内部で頻繁にアクセスされる各種テーブルをメモリにロードします。
FS_UnloadTable |  | テーブルのロードに使用していたメモリを解放します。
FS_GetTableSize |  | 内部のテーブルが必要とするメモリサイズを取得します。
ROMアーカイブ |  | デフォルトでファイルシステムにロードされるアーカイブです。
メモリファイルアーカイブ |
NANDアーカイブ |
SDカードアーカイブ |

### ハンドル情報

FS_InitFile |  | FSFile構造体を初期化します。
FS_IsBusy |  | 指定したファイルが現在非同期処理中か判定します。
FS_IsSucceeded |  | 指定したファイルの最新の非同期処理が成功したか判定します。
FS_IsFile |  | 指定したファイルが現在ファイル情報を格納しているか判定します。
FS_IsDir |  | 指定したファイルが現在ディレクトリ位置を格納しているか判定します。
FS_GetAttachedArchive |  | ファイルに関連づけられたアーカイブを取得します。
FS_GetResultCode |  | 指定したファイルの最後の処理の結果値を取得します。
FS_GetArchiveResultCode |  | 指定したアーカイブの最後の処理の結果値を取得します。
FS_WaitAsync |  | ファイルが実行している非同期処理の完了を待ちます。
FS_CancelFile |  | ファイルが実行している非同期処理のキャンセルを要求します。
FS_GetPathName |  | 開いているファイルまたはディレクトリのパス名を取得します。
FS_GetPathLength |  | 開いているファイルまたはディレクトリのパス名の長さを取得します。

### ファイルアクセス

FS_OpenFileEx[W] |  | パス名を指定してファイルを開きます。
FS_CloseFile |  | ファイルを閉じます。
FS_OpenFileFast |  | IDを指定してファイルを開きます。
FS_ConvertPathToFileID |  | 指定したパス名からファイルIDを取得します。
FS_OpenFileDirect |  | 領域を指定してファイルを開きます。
FS_GetFileImageTop |  | 開いているファイルの領域先頭のオフセット値を取得します。
FS_GetFileImageBottom |  | 開いているファイルの領域終端のオフセット値を取得します。
FS_GetFileLength |  | 開いているファイルのサイズを取得します。
FS_SetFileLength |  | 開いているファイルのサイズを変更します。
FS_GetFilePosition |  | 開いているファイルの現在位置を取得します。
FS_GetSeekCacheSize |  | シークキャッシュ用バッファのサイズを算出します。
FS_SetSeekCache |  | 開いているファイルにシークキャッシュ用のバッファを設定します。
FS_SeekFile |  | 開いているファイルポインタの位置を移動します。
FS_SeekFileToBegin |  | 開いているファイルポインタの位置を先頭に移動します。
FS_SeekFileToEnd |  | 開いているファイルポインタの位置を終端に移動します。
FS_ReadFile |  | 開いているファイルからデータを読み出します。
FS_ReadFileAsync |  | 開いているファイルからデータを非同期モードで読み出します。
FS_WriteFile |  | 開いているファイルへデータを書き込みます。
FS_WriteFileAsync |  | 開いているファイルへデータを非同期モードで書き込みます。
FS_FlushFile |  | 開いているファイルの変更内容をデバイスへ確実に書き戻すよう要求します。
FS_CreateFileFromMemory |  | 指定のメモリ領域を一時的なファイルとみなして開きます。
FS_CreateFileFromRom |  | 指定の CARD-ROM 領域を一時的なファイルとみなして開きます。

### ディレクトリアクセス

FS_GetPathInfo |  | ファイルまたはディレクトリの情報を取得します。
FS_SetPathInfo |  | ファイルまたはディレクトリの情報を変更します。
FS_CreateFile |  | ファイルを生成します。
FS_DeleteFile |  | ファイルを削除します。
FS_RenameFile |  | ファイル名を変更します。
FS_CreateDirectory |  | ディレクトリを生成します。
FS_DeleteDirectory |  | ディレクトリを削除します。
FS_RenameDirectory |  | ディレクトリ名を変更します。
FS_CreateFileAuto |  | ファイルを生成します。必要に応じて中間ディレクトリを自動的に生成します。
FS_DeleteFileAuto |  | ファイルを削除します。(実際の動作はFS_DeleteFile関数と同等ですが統一性のために用意されています)
FS_RenameFileAuto |  | ファイル名を変更します。必要に応じて中間ディレクトリを自動的に生成します。
FS_CreateDirectoryAuto |  | ディレクトリを生成します。必要に応じて中間ディレクトリを自動的に生成します。
FS_DeleteDirectoryAuto |  | ディレクトリを削除します。必要に応じてサブディレクトリも全て削除します。
FS_RenameDirectoryAuto |  | ディレクトリ名を変更します。必要に応じて中間ディレクトリを自動的に生成します。
FS_OpenTopLevelDirectory |  | アーカイブ名を列挙できる特殊な最上位ディレクトリを開きます。
FS_OpenDirectory[W] |  | パス名を指定してディレクトリを開きます。
FS_CloseDirectory |  | ディレクトリを閉じます。
FS_ReadDirectory[W] |  | ディレクトリハンドルからエントリ情報を読み出します。
FS_ReadDir |  | ディレクトリハンドルからエントリ情報を読み出します。
FS_TellDir |  | ディレクトリリストの現在位置を取得します。
FS_SeekDir |  | ディレクトリリストの現在位置を設定します。
FS_RewindDir |  | ディレクトリリストの現在位置を最初に戻します。

### アーカイブ

FS_InitArchive |  | アーカイブ構造体を初期化します。
FS_GetArchiveName |  | アーカイブ名を取得します。
FS_GetArchiveResource |  | アーカイブのリソース情報を取得します。
FS_HasEnoughSpaceToCreateFile |  | 指定のパス名とサイズを持つファイルが実際に生成可能か判定します。
FS_IsArchiveReady |  | 指定したアーカイブが現在使用可能かどうか判定します。
FS_GetArchiveBase |  | アーカイブのベースオフセットを取得します。
FS_GetArchiveFAT |  | アーカイブの FAT オフセットを取得します。
FS_GetArchiveFNT |  | アーカイブの FNT オフセットを取得します。
FS_GetArchiveOffset |  | アーカイブのベースからの指定位置オフセットを取得します。
FS_IsArchiveLoaded |  | アーカイブが現在ファイルシステムにロード済みか判定します。
FS_IsArchiveTableLoaded |  | アーカイブが現在テーブルをプリロード済みか判定します。
FS_IsArchiveSuspended |  | アーカイブが現在サスペンド中か判定します。
FS_FindArchive |  | 指定した名前をもつアーカイブを検索します。
FS_RegisterArchiveName |  | アーカイブ名を登録し, アーカイブに関連付けます。
FS_ReleaseArchiveName |  | 登録済みのアーカイブ名を解放します。
FS_LoadArchive |  | アーカイブをファイルシステムにロードします。
FS_UnloadArchive |  | アーカイブをファイルシステムからアンロードします。
FS_LoadArchiveTables |  | FNT と FAT をプリロードしてアクセスの大部分を高効率化します。
FS_UnloadArchiveTables |  | FNT と FAT のプリロードメモリを解放します。
FS_SuspendArchive |  | アーカイブの処理自体を停止します。
FS_ResumeArchive |  | 停止していたアーカイブの処理を再開します。
FS_SetArchiveProc |  | アーカイブのユーザプロシージャを設定します。
FS_NotifyArchiveAsyncEnd |  | 非同期で実行していたアーカイブ処理の完了を通知します。
FS_RegisterEventHook |  | アーカイブのイベントを監視するフックを登録します。
FS_UnregisterEventHook |  | アーカイブのイベントを監視するフックを解除します。

### オーバーレイ

FS_AttachOverlayTable |  | オーバーレイテーブルを設定します。
FS_LoadOverlayInfo |  | オーバーレイモジュールの情報をロードします。
FS_GetOverlayTotalSize |  | オーバーレイモジュールの全体サイズを取得します。
FS_GetOverlayImageSize |  | オーバーレイモジュールのロードイメージサイズを取得します。
FS_GetOverlayAddress |  | オーバーレイモジュールのメモリ先頭アドレスを取得します。
FS_GetOverlayFileID |  | オーバーレイモジュールのロードイメージを格納しているファイルの ID を取得します。
FS_ClearOverlayImage |  | オーバーレイモジュールの領域をクリアします。
FS_LoadOverlayImage |  | オーバーレイモジュールのイメージをメモリへロードします。
FS_LoadOverlayImageAsync |  | オーバーレイモジュールのイメージをメモリへ非同期にロードします。
FS_StartOverlay |  | オーバーレイモジュールのイメージ初期化処理を実行します。
FS_EndOverlay |  | オーバーレイモジュールの終了処理を実行します。
FS_UnloadOverlayImage |  | オーバーレイモジュールのイメージをメモリからアンロードします。
FS_LoadOverlay |  | オーバーレイモジュールをロードし、初期化処理を実行します。
FS_UnloadOverlay |  | オーバーレイモジュールをアンロードします。

### 定数

FSResult |  | アーカイブコマンドの結果を表します。
FSSeekFileMode |  | ファイルポインタ移動の基準位置を表します。
FS_FILE_NAME_MAX |  | ファイル名およびパス名の最大文字数です。
FS_ARCHIVE_NAME_LEN_MAX |  | アーカイブ名の最大文字数です。
FS_DMA_NOT_USE |  | DMAチャンネルを使用せずCPU転送を指定する場合の定数です。
FS_ARCHIVE_PROC_* |  | アーカイブのユーザプロシージャ指定に使用する定数です。
FS_FILEMODE_* |  | ファイルのアクセスモード指定に使用する定数です。
FS_DIRMODE_* |  | ディレクトリのアクセスモード指定に使用する定数です。
FS_PERMIT_* |  | ファイルのアクセス権設定に使用する定数です。

### 型・構造体

FSFile |  | ファイルアクセスに使用する構造体です。
FSDirectoryEntryInfo[W] |  | ディレクトリエントリの情報を格納する構造体です。
FSPathInfo |  | パスエントリの情報を格納する構造体です。
FSArchiveResource |  | アーカイブのリソース情報を格納する構造体です。
FSDateTime |  | 時刻情報をあらわす構造体です。
FSDirEntry |  | ディレクトリエントリの情報を格納する構造体です。
FSDirPos |  | ディレクトリリスト位置を表します。
FSFileID |  | 一意のファイルIDを表します。
FSCommandType |  | アーカイブへ送られるコマンドIDを表します。
FS_ARCHIVE_READ_FUNC |  | アーカイブへ指定するリードコールバック関数の形式を表します。
FS_ARCHIVE_WRITE_FUNC |  | アーカイブへ指定するライトコールバック関数の形式を表します。
FSArchive |  | アーカイブの構築に使用する構造体です。
FSOverlayID |  | オーバーレイモジュールのIDを表します。
FSOverlayInfo |  | オーバーレイモジュールの情報を格納する構造体です。
FS_EXTERN_OVERLAY |  | オーバーレイモジュールのIDを宣言するマクロです。
FS_OVERLAY_ID |  | オーバーレイモジュールのIDを定義するマクロです。
FS_EXTERN_LTDOVERLAY |  | LTDオーバーレイモジュールのIDを宣言するマクロです。
FS_LTDOVERLAY_ID |  | LTDオーバーレイモジュールのIDを定義するマクロです。