デフォルトでは”OFS”(階層型ファイルシステム),”SBFS”(プチコンのファイルシステム)が存在し、OFSがルートファイルシステムとなっている。
mountコマンドを利用してマウントすることができる
mount filesystem [data] path
mount SBFS TXT: /TXT
とすると/TXTにTXTファイルのみをマウントできる
初期状態では
となっている予定
/devライクなファイルシステム
無視される
階層型ファイルシステム
“PROJECT/”などと指定すると指定プロジェクトを利用できる(SMILETOOLのみ)
プチコンファイルシステム
“TXT:”でカレントプロジェクトのTXT “DAT:”でカレントプロジェクトのDAT “TXT:SYS/”でSYSプロジェクトのTXT(読み込みのみ) “DAT:SYS/”でSYSプロジェクトのDAT(読み込みのみ) “//”でプロジェクト一覧(SMILETOOL以外ではプロジェクトとそのファイル一覧のみしか取得できない)
SMILETOOL用のプログラム(COMMON除去版)ならTRUEが返る それ以外ならFALSE
NAME$に紐づけてファイルシステムを作成する 既にNAME$がある場合FS_ERROR_DUPFS メモリ不足の際FS_ERROR_OUTOFMEM
NAME$からFileSystemを検索
存在しない場合はCALL “FS_INIT_“+NAME$する
DEF FUNC FS,DATA$,PATH$,FILELIST$[] OUT ERR
ファイル一覧が取得される際に呼ばれる FILELIST$[]にファイルをPUSHする
FSが不正な時FS_ERROR_INVALIDFS FUNC$が不正な時FS_ERROR_INVALIDFUNC
DEF FUNC FS,DATA$,PATH$,OPTION$ OUT FILE,ERR
PATH$のファイルが開かれる際に呼ばれる FILEにファイルERRにエラーを格納する
FSが不正な時FS_ERROR_INVALIDFS FUNC$が不正な時FS_ERROR_INVALIDFUNC
Mountされる際に呼ばれる
DEF FUNC FS,DATA$,PATH$,MOUNTFS$,MOUNTDATA$ OUT ERR
未設定時のデフォルト挙動はERRにFS_ERROR_NOTSUPPORTEDを設定する
FSが不正な時FS_ERROR_INVALIDFS FUNC$が不正な時FS_ERROR_INVALIDFUNC
DEF FUNC FS,DATA$,PATH$ OUT OUTFS,OUTDATA$,OUTPATH$,ERR
未設定時の挙動はPATH$が存在すればERRを0にし、しなければERRに値を設定する
OUTFSをFSにしてOUTDATA$をDATA$にしてOUTPATH$をPATH$にする
1階層のみのディレクトリ作成のハンドラを設定
DEF FUNC FS,DATA$,PATH$ OUT ERR
ファイル削除のハンドラを設定
DEF FUNC FS,DATA$,PATH$ OUT ERR
名前変更ハンドラを設定
DEF FUNC FS,DATA$,PATH$,NEWNAME$ OUT ERR
ファイルタイプ取得ハンドラを設定
DEF FUNC FS,DATA$,PATH$ OUT TYPE$,ERR
プチコンでのファイル名を取得
DEF FUNC FS,DATA$,PATH$ OUT FILE$,ERR
FILE$にはプチコンで有効なファイル名(DAT:HOGE.GRP,TXT:HOGE.PRG)
DATAファイルを保存するハンドラを設定
DEF FUNC FS,DATA$,PATH$,ARRAY OUT ERR
FILESYSTEM$をPATH$にマウント
FS_ERROR_NOTFOUND FS_ERROR_NOTSUPPORTED FS_ERROR_ACCESS FS_ERROR_NOSPACE FS_ERROR_CANCEL
0x6001
0x6002