[Back to DOS SWAG index] [Back to Main SWAG index] [Original]
{
> What are the valid characters for a filename in DOS?
Better to say which are invalid, or even more good to post a routine that
checks filename for bad characters, eh? :)
}
Function ValidFileName(FileName : string) : boolean; assembler;
const BadChars : PChar = ' /,;^+[]"=*?|<>'; { these are BAD onez }
Asm
mov dl,True
push ds
lds si,FileName
cld
lodsb
xor cx,cx
mov cl,al
jcxz @@4
@@1:
lodsb
push ds
push cx
mov cx,15
lds di,BadChars
@@2:
scasb
jnz @@3 { if not bad char then exec loop }
pop cx { restore CX }
pop ds { restore DS }
dec dl { dl=False }
jmp @@4
@@3:
loop @@3
pop cx { restore CX }
pop ds { restore DS }
loop @@1
@@4:
pop ds
mov al,dl { result 0/1 (False/True) in AL }
End; { ValidFileName }
[Back to DOS SWAG index] [Back to Main SWAG index] [Original]