Assembly Language Help (alang.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Int 21h Function 29h
 Detail Example                          Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
  Interrupt:   21h     Function:   29h
 
  Title:       Parse Filename
 
  Description:
 
     Parses a text string into the various fields of a file control
     block (FCB).
 
     Input                                      Output
 
     AH = 29h                                    AL = 00h (if no
     AL = Flags to control parsing                         wildcard
          Bit 3 = 1 (if the extension field                characters
                     in FCB will be modified               encountered
                     only if an extension is
                     specified in the string        = 01h (if parsed
                     being parsed)                         string
                = 0 (if the extension field                contained
                     in FCB will be modified               wildcard
                     regardless; if no                     characters)
                     extension is present
                     in the parsed string,          = FFh (if drive
                     FCB extension is set                  specifier
                     to ASCII blanks)                      invalid)
          Bit 2 = 1 (if the filename field
                     in FCB will be modified     DS:SI = segment:offset
                     only if a filename is               of first
                     specified in the string             character
                     being parsed)                       after parsed
                = 0 (if the filename field               filename
                     in FCB will be modified
                     regardless; if no           ES:DI = segment:offset
                     filename is present                 of formatted
                     in the parsed string,               unopened file
                     FCB file name is set to             control block
                     ASCII blanks)
          Bit 1 = 1 (if the drive ID byte in
                     FCB will be modified
                     only if a drive was
                     specified in the string
                     being parsed)
                = 0 (if the drive ID byte
                     in FCB will be modified
                     regardless; if no drive
                     specifier is present
                     in the parsed string,
                     FCB drive-code field is
                     set to 0 (default))
          Bit 0 = 1 (if the leading
                     separators will be
                     scanned off (ignored))
                = 0 (if the leading
                     separators will not be
                     scanned off)
     DS:SI = segment:offset of text string
     ES:DI = segment:offset of file control block
                                    -♦-