NEXTOR PR 03 06

From Z80 Machines Wiki
Jump to: navigation, search

3.6.ドライブスペース情報を取得する(_DSPACE、76h)

パラメータ:C = 76H(_DSPACE)
             E =ドライブ番号(0 =デフォルト、1 = A:など)
             A = 00H =>空き容量を確保する
                  01H =>総スペースを取得 

結果:A =エラーコード
             HL:DE =キロバイト単位のスペース
             BC =追加スペース(バイト) 

この関数はドライブの合計または空き容量を返します。ドライブにマップされているファイルシステムのタイプとクラスタサイズに関係なく、スペース情報は常にキロバイト単位で返されます。

「余分な空き容量(バイト)」の結果は、ドライブの最小割り当て単位が整数のキロバイトではない場合にのみゼロと異なります。 FATドライブの場合、ドライブがクラスタごとに1つのセクタを使用し、クラスタ数が奇数の場合に限り、ゼロ以外(具体的には512)になります。たとえば、1つのクラスタに1つのセクタと15の空きクラスタがあるドライブの場合、このドライブに対してA = 0を指定して呼び出すと、HL = 0、DE = 7、BC = 512が返されます。

この関数によって返されるスペース情報は常に実数であり、それは縮小/ゼロ割り当て情報モードの影響を受けません。