GN_Wsm, Match filename segment to wildcard string

Register parameters

RST 20H, DEFW $5C09
IN:
     HL = 0,1,2; not allowed
     HL = pointer to wildcard string (must be > 255)
     DE = pointer to buffer for filename (must be > 255)

OUT, if call matched:
     Fz = 1
     HL = pointer to wildcard separator
     DE = pointer to filename separator
OUT, if call not matched:
     Fz = 0
     HL = HL(in)
     DE = DE(in)

Registers changed after return:
     ..BC..../IXIY same
     AF..DEHL/.... different

Notes

This matches (or attempts) a single segment of a filename. Assumes that both the wildcard and the match string do not index the prefix characters (":", "/" or "\").

Related calls

GN_Esa, read & write to filename segments
GN_Fcm, compress a filename
GN_Fex, expand a filename
GN_Opw, open wildcard handler
GN_Pfs, parse filename segment
GN_Prs, parse filename
GN_Wcl, close wildcard handle
GN_Wfn, fetch next match for wildcard string (handle)