INT 21,29 - Parse a Filename for FCB
AH = 29h
AL = bit pattern to control parsing (see bit meanings below)
DS:SI = pointer to a filespec to parse
ES:DI = pointer to a buffer for unopened FCB
Bit patterns for parsing control found in AL:
|7|6|5|4|3|2|1|0| AL
| | | | | | | `---- 1 = ignore leading separators
| | | | | | | 0 = don't ignore leading separators
| | | | | | `----- 1 = modify drive ID if specified
| | | | | | 0 = modify drive ID regardless
| | | | | `------ 1 = modify filename if specified
| | | | | 0 = modify filename regardless
| | | | `------- 1 = modify extension if specified
| | | | 0 = modify extension regardless
`-------------- unused
on return:
AL = 00 if no wildcard characters present
= 01 if wildcards present in string
= FF if drive specifier is invalid
DS:SI = pointer to the first character after parsed filename
ES:DI = pointer to the updated unopened FCB
- retrieves filename from the command line string and places
the filename components into an unopened FCB for later use
- if no filename is found a pointer is returned in ES:DI that
has a blank at ES:DI+1
- this function can be used to detect the existence of logical DOS
drives by creating a dummy filespec with a drive letter and colon
prepended. If the drive is invalid, this function will return FF
in AL