Hi Frank, you wrote that the "Online Bible for DOS", which one can download at http://www.onlinebible.net/dosolb.html does not work in FreeDOS.
After some messing with dosemu and the built-in debugger and interrupt trace functions of it, I figured out that your problem is in DOS INT 21 function 29, FcbParseFname. The difference between MS DOS and FreeDOS is in what happens when you use a filename with a directory spec as input. For example "foo.txt" and "x:foo.txt" are both handled okay, but for "x:\moo\foo.txt", FreeDOS returned "\moo\foo" as the file name, while it seems to be supposed to return "" in that case! A patch to fix this in FreeDOS is as shown below. I also sent you a modified binary off-list / by direct email. Please try the updated kernel :-) Eric PS: Question to the experts, dos_rename now uses alloc_find_free to support cross-directory rename (good), but that has 2 problems: When you rename a directory, the ".." of it is not updated (bad) and renaming anything consumes a directory entry (bad). Both problems have been reported as bugs. Can anybody write a better fatfs.c dos_rename? It could "alloc only if different dir, else rename in-place" and "if renamed item is dir, update ..". Thanks a lot. diff -u fcbfns.org fcbfns.c --- fcbfns.org 2004-07-25 10:04:54.000000000 +0200 +++ fcbfns.c 2007-05-09 01:22:52.000000000 +0200 @@ -149,6 +149,14 @@ return FP_OFF(lpFileName); } + /* MS DOS returns all-spaces filename and ext in FCB if pathspec found */ + if (*lpFileName == '\\') + { + /* file name and ext are left unset or blanked, see PARSE_BLNK_* above */ + *wTestMode = PARSE_RET_NOWILD; + return FP_OFF(lpFileName); + } + /* Now to format the file name into the string */ lpFileName = GetNameField(lpFileName, (BYTE FAR *) lpFcb->fcb_fname, FNAME_SIZE, ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user