MSX-DOS2 FCS 03 72

From Z80 Machines Wiki
Jump to: navigation, search

3.72パースファイル名(5CH)

パラメータ:C = 5CH(_PFILE)

構文解析用のDE = ASCIIZストリング

HL = 11バイトバッファへのポインタ

結果:A =エラー(常にゼロ)

DE =終了文字へのポインタ

HL =保存済み、バッファーがいっぱい

B =解析フラグ


この関数は純粋に文字列操作関数です。ディスクにはまったくアクセスせず、文字列をまったく変更しません。これは主に一時的なプログラムがフォーマットされた方法でファイル名を出力するのを助けるためのものです。 ASCIIZ文字列は単一のファイル名項目として解析され、ファイル名は拡張された形式でユーザーの11バイトバッファに格納され、ファイル名と拡張子の両方がスペースで埋められます。

レジスタBに返される解析フラグは、ビット0、1、および2が常にクリアされることを除いて、上記の「解析パス名」機能(機能5Bh)のものと同じです。文字列に有効なファイル名がない場合でも、ユーザーのバッファは常に埋められます。その場合、バッファはスペースで埋められます。 "*"文字は適切な数の "?"に展開されます。ファイル名またはファイル名拡張子のどちらかが長すぎると、余分な文字は無視されます。

レジスタDEに返されるポインタは、ファイル名の一部ではない文字列の最初の文字を指します。これは、文字列の末尾ではNULLでもかまいません。この文字は、有効なファイル名文字にはなりません(有効なファイル名文字の詳細については、「コマンド仕様」を参照)。