Tom is right. The truncation is standard documented behaviour. It all
goes via the internal implementation of TRUENAME
(http://www.delorie.com/djgpp/doc/rbinter/id/50/31.html) where the
path is converted to its fully qualified version.
quote: "letters are uppercased, forward slashes converted to backslashes,
 asterisks converted to appropriate number of question marks, and
 file and directory names are truncated to 8.3 if necessary."
There are 2 128-byte buffers at very specific locations in the DOS DS,
one for almost everything and the second for RENAME destinations.
Deviate from those 2 and you'll get compatibility issues quite quickly.

FD kernel's truename implementation is careful about the 128-byte
limit, if there is not enough space it returns an error, it does not
overflow as far as I can see.
This is all in the somewhat funnily named file newstuff.c:
https://github.com/FDOS/kernel/blob/master/kernel/newstuff.c

Bart


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to