ffs
所属分类:Windows编程
开发工具:C/C++
文件大小:162KB
下载次数:27
上传日期:2006-06-08 11:46:40
上 传 者:
chuanwei_gm
说明: FAT文件操作系统经典,能够实现在PC上的文件操作
(FAT file classic operating system, can be achieved on a PC file manipulation)
文件列表:
atfdio.c (16091, 2006-02-28)
BASICSUB.C (6216, 1998-07-28)
BASICSUB.H (2737, 1998-07-28)
CC.BAT (65, 1998-08-17)
CLOCK.H (1342, 1998-08-17)
CLOCKAT.C (6992, 1998-08-17)
defaultsession.hsf (3192, 2006-05-29)
DEFINE.H (4198, 1998-07-28)
DISKIO.H (3192, 1998-08-20)
DSP_BPB.C (8754, 1998-06-24)
DSP_BPB.EXE (34014, 1998-07-28)
ffs.c (125441, 2006-05-22)
ffs.h (22865, 2006-03-15)
FFSERR.H (2186, 1998-07-28)
guomiao.nav (18632, 2006-05-29)
guomiao.pgs (640, 2005-12-27)
guomiao.tps (620, 2006-05-29)
SD.C (9900, 1998-07-21)
SD.EXE (34958, 1998-07-28)
TST02.C (18634, 1998-08-21)
TST02.EXE (144371, 2000-02-24)
README.TXT 2000年 2月24日 第3版 大貫広幸 作成
(1) はじめに
今回のリリースでは,前回リリースのFAT型ファイルシステム(略してFFS) Ver 0.2 で発見されたバグを修正しています.
(2)FFS Ver 0.20 → Ver 0.21 への変更点について
前回配布 FFS Ver 0.20 から,今回配布の FFS Ver 0.21 への変更点について述べます.
① FFS_readおよびFFS_writeで,1クラスタ2セクタより大きいディスクの場合,リード/ライトのサイズによっては,正しくセクタがアクセスできなかった.
(3)お願い
現在のFFSをより完璧にするために,バグを発見されたり,どこどこ社のXXX CPU用のCコンパイラではFFSがコンパイルできないといったことがありましたら,その状況をぜひInterface編集部まで,ご一報ください.その場合,できる限り詳しい情報をお願いします.
また,FFSに追加して欲しいファンクションなどのリクエストがあれば,その内容もお寄せください.バグの修正とできる限りの機能強化を行いたいと考えています.必要があれば,こちらから直接電子メールでご連絡したり,バグ修正版のFFSをお送りする場合もございますので,ご連絡いただくの際には電子メールのアドレスもできればお知らせください.
FFS関連のソースファイルには,できるだけコメントを多く入れるようにしているため,Interface誌19***年9月号の特集を理解できれば,FFSの構造やドライバの組み方などは,ソースファイルの内容を見るだけでわかるのではないかと思います.
しかし,リクエストが多ければ,詳細なFFSの構造説明やドライバの作成方法などのドキュメントも書きたいと思っています.
(4) 配布ファイルの内容
配布ファイルとして,このREADME.TXT以外に下記のような17本のファイルがあります.
DEFINE H 4,1*** ***-07-28 2:55
FFSERR H 2,186 ***-07-28 2:55
BASICSUB H 2,737 ***-07-28 2:56
BASICSUB C 6,216 ***-07-28 2:56
FFS H 22,865 00-02-24 10:53
FFS C 125,432 00-02-24 11:40
DISKIO H 3,192 ***-08-20 23:29
ATFDIO C 16,091 ***-08-20 23:30
CLOCK H 1,342 ***-08-17 9:58
CLOCKAT C 6,992 ***-08-17 9:58
TST02 C 18,634 ***-08-21 0:53
CC BAT 65 ***-08-17 9:31
TST02 EXE 144,371 00-02-24 11:40
DSP_BPB C 8,754 ***-06-24 9:47
DSP_BPB EXE 34,014 ***-07-28 9:14
SD C 9,900 ***-07-21 17:36
SD EXE 34,958 ***-07-28 9:14
FFS本体関連ファイルは,DEFINE.H,FFSERR.H,BASICSUB.H,BASICSUB.C,DISKIO.H,FFS.H,FFS.Cの七つです.
ATFDIO.Cは,AT互換機用のFDドライバ,CLOCK.H,CLOCKAT.CはAT互換機用のクロック(時刻と日付)処理モジュールです.Turbo C 4.0 for DOS用のソースファイルです.
TST02.Cは,FFSのデバッグ用のモジュールで,DOS/V上でFFS Ver 0.21 がサポートしているファンクションを実行することができます.
TST02は,バッチファイルCC.BATで
CC TST02
とすることでコンパイルすることができます.
ATFDIO.C,CLOCK.H,CLOCKAT.C,TST02.Cをコンパイルするためには,CコンパイラとしてTurbo C 4.0 for DOSが必要になります.
DSP_BPBとSDのソースファイルとEXEファイルは,ディスクの内容を見るためのユーティリティです.ともにDOS/VあるいはPC***00のDOSあるいはWin95,Win***のDOS窓で実行することができます.
DSP_BPBは,ディスク上のブートセクタにあるBPBの内容を表示するためのプログラムです.
SDはディスク上のセクタをダンプするためのプログラムです.
使い方は,DSP_BPB,SDともに引数を付けずに実行することで画面に表示されます.
DSP_BPBおよびSDは,FAT12,FAT16のディスクに対して実行可能です.残念ながらセクタリードに使用しているDOSの int 25h のアブソリュートディスクリードが,既存の方法ではFAT32のディスクリードを許可していないことから,DSP_BPB,SDでFAT32は扱えません.
(5) 使用上の注意
FFSとその関連プログラムのソースファイルは,下記の注意事項に同意できる方のみご使用ください.同意できる方は,自分の責任において***にFFSとその関連プログラムを使用し,改造することができます.
また,FFSを使用者が開発しているプログラムの一部として,ロイヤリティの支払いなしに使用することができます.ただし,その場合も自分の責任においてということになります.
① FFSとその関連プログラムを使用して生じたトラブルについては,CQ出版(株)および大貫広幸はいかなる責任も負いません.
② プログラムのバグ修正やバージョンアップなどのメンテナンスを,FFSの使用者は強制することはできません.ただし,早急な内容修正などの依頼があれば有料でお受けします.
③ 大貫広幸が開発したFFSとその関連のプログラムの著作権は大貫広幸にあるものとします.
また,いかなる場合でも,著作権者大貫広幸の許可なく第三者によるFFSとその関連プログラムのソースファイルの配布を禁じます.これは,FFS使用者が改造したFFS関連のソースファイルにも適用されます.
もし,FFSとその関連プログラムのソースファイルの配布を考えておられる方は,Interface編集部を通じて大貫広幸までご連絡ください.ケースバイケースで対応させていただきます.
④ FFSは次のような装置には使用できません.
生命維持のための医療装置
交通信号,列車制御,航空宇宙関連の装置
燃焼装置,防火,防犯装置
原子力関連の装置
自動車電装
その他,人体に影響を与える装置
--------------------------------------------------------------------------
変更履歴
--------------------------------------------------------------------------
●FFS Ver 0.10 → Ver 0.20 への変更点
①FFS Ver 0.10では,Interface誌19***年9月号に掲載した一部のファンクションが未実装だったものを,FFs Ver 0.20 ではすべて実装しました.
②次の六つのファンクションを追加しました.
FFS_cvFname,FFS_cvFdate,FFS_cvFtime,FFS_getFDPaddr,
FFS_openFiles,FFS_getVerNo
追加ファンクションの内容については,FFS.Hのソースファイルをご覧ください.
③バグの修正.修正したバグのおもな内容は次の通りです.
FFS_writeで,***Kバイト以上のクラスタの確保が正しく行われない.
FFS_findFirst,FFS_findNext
サブディレクトリがあるクラスタ番号が256以上のときディレクトリエントリが正しく取得できない.また,256個目以降のエントリが正しく取得できない.エラーが発生したとき,正しいエラーコードが返されない.
アクセスコード2(リード/ライトモード)でオープンしたとき,FFS_readでリードできない.
既存のファイルに対してライトすると,ファイルのリード/ライトポインタの値により,ファイルサイズが不正に変更されることがある.
リードあるいはライトするバイト数によっては,リードサイズあるいはライトサイズが正しく処理されないことがある.
FFS_writeのクラスタの確保で,ディスクの最終クラスタ番号に達すると0x1Aのエラーが発生する.
FFS_getFnsで,エラーのときエラー発生を表す -1 の戻り値を返さないことがある.
④ファンクションの追加やバグの修正により,ヘッダファイルに記述されている構造体や関数の仕様の一部を変更しました.
⑤ソースファイル上の不適切なコメントや間違ったコメントを変更.
近期下载者:
相关文件:
收藏者: