INT 21 - Windows95 - LONG FILENAME - FIND FIRST MATCHING FILE AX = 714Eh CL = allowable-attributes mask (see #01420 at AX=4301h) (bits 0 and 5 ignored) CH = required-attributes mask (see #01420) SI = date/time format (see #01778) DS:DX -> ASCIZA NUL-terminated ASCII string. The ASCIZ string "ABC" consists of the four bytes 41h, 42h, 43h, and 00h. Unless otherwise specified, maximum lengths given in the interrupt list do not include the terminating NUL. filespec (both "*" and "*.*" match any filename) ES:DI -> FindData record (see #01779) Return: CF clear if successful AX = filefind handle (needed to continue search) CX = Unicode conversion flags (see #01780) CF set on error AX = error code 7100h if function not supported Notes: this function is only available when IFSMgr is running, not under bare MS-DOS 7 the application should close the filefind handle with AX=71A1h as soon as it has completed its search for compatibility with DOS versions prior to v7.00, the carry flag should be set on call to ensure that it is set on exit SeeAlso: AH=4Eh,AX=714Fh,AX=71A1h (Table 01778) Values for Windows95 date/time format: 0000h use 64-bit file time format 0001h use MS-DOS date/time values (see #01665,#01666) in low double-word of file time QWORD(quad-word) Eight bytes. See also DWORD, PWORD. (date is high word, time is low word of double-word) SeeAlso: #01779 Format of Windows95 long filename FindData record: Offset Size Description (Table 01779) 00h DWORDDoubleword; four bytes. Commonly used to hold a 32-bit segment:offset or selector:offset address. file attributes bits 0-6 standard DOS attributes (see #01420 at INT 21/AX=4301h) bit 8: temporary file 04h QWORD(quad-word) Eight bytes. See also DWORD, PWORD. file creation time (number of 100ns intervals since 1/1/1601) 0Ch QWORD(quad-word) Eight bytes. See also DWORD, PWORD. last access time 14h QWORD(quad-word) Eight bytes. See also DWORD, PWORD. last modification time 1Ch DWORDDoubleword; four bytes. Commonly used to hold a 32-bit segment:offset or selector:offset address. file size (high 32 bits) 20h DWORDDoubleword; four bytes. Commonly used to hold a 32-bit segment:offset or selector:offset address. file size (low 32 bits) 24h 8 BYTEs reserved (apparently unused) 2Ch 260 BYTEs ASCIZA NUL-terminated ASCII string. The ASCIZ string "ABC" consists of the four bytes 41h, 42h, 43h, and 00h. Unless otherwise specified, maximum lengths given in the interrupt list do not include the terminating NUL. full filename 130h 14 BYTEs ASCIZA NUL-terminated ASCII string. The ASCIZ string "ABC" consists of the four bytes 41h, 42h, 43h, and 00h. Unless otherwise specified, maximum lengths given in the interrupt list do not include the terminating NUL. short filename (for backward compatibility) Note: under Windows95B, the ASCIZA NUL-terminated ASCII string. The ASCIZ string "ABC" consists of the four bytes 41h, 42h, 43h, and 00h. Unless otherwise specified, maximum lengths given in the interrupt list do not include the terminating NUL. short filename will be the empty string if the directory does not contain a long filename entry for the file; in that case, the application should use the full filename SeeAlso: #01780 Bitfields for Windows95 Unicode conversion flags: Bit(s) Description (Table 01780) 0 the returned full filename contains underscores for un-convertable Unicode characters 1 the returned short filename contains underscores for un-convertable Unicode characters SeeAlso: #01779