Hi again, after all the discussion about people being interested in having a fat32 undelete but nobody who would actually write one, I finally added the changes which outlined in an earlier mail myself. The result is available online:
www.coli.uni-saarland.de/~eric/stuff/soft/undelete32beta.zip This version contains two KNOWN BUGS: 1. It breaks the FAT32 "used space count" information (dosfsck can fix this). Workaround would be to trigger "set used space count to unknown on exit if any FAT writes were done during undelete" or even better "properly update the count", but you will also have to somehow tell DOS that the disk content is right and DOS is wrong (it also keeps the count in RAM) / that DOS has to re-read that count. If you redirect UNDELETE output to a file on the same disk while doing FAT-modifying stuff with UNDELETE, you are asking for even more trouble... I assume that the wrong counts cause no big troubles. Second KNOWN BUG is that this UNDELETE does not do anything to claim raw disk access. I included some (name *.?- ...) snippets from FORMAT which should be added to UNDELETE to fix that. The current UNDELETE does work in FreeDOS because FreeDOS is singletasking and does not care too much about lowlevel messing but I guess it does not work in Windows... Disk access is also quite ugly, I just try < 32 MB, > 32 MB and FAT32 styles in that order until one access method works. Note that UNDELETE can also work with diskimages, but this was only active in the Linux version. I suggest to introduce a new fake drive letter like "@:" which is treated as "use test.img" even in the DOS version. As you can see, there is much potential for improvement and I hope that at least some of the improvement can be contributed by others. But this version of UNDELETE is already able to undelete files on FAT12, FAT16 and FAT32 so it should be good enough for testing :-). Of course I have no idea whether it would screw up all YOUR files, so you should only try it if you have backups of your data! Thanks for testing :-). As opposed to a bit of repackaging in 1/2004, this is the first time for me to touch the UNDELETE sources again since pre 11/2003 when Rob contributed a version which implemented the ability to undelete all files in 1 directory in one go and the ability to undelete a file "in place"... Previous UNDELETE versions only copied the deleted files to another disk, without changing the source disk contents (safer). Unfortunately, I had to find out that the 11/2003 version both had a broken Turbo C 2 Makefile and broken Linux gcc portability. I fixed the former now, but I would be really happy if somebody could look into the differences between 11/2003 and earlier versions and tell me how to repair the Linux version of UNDELETE. Thanks in advance! :-). Note that there is some UNDELETE howto available as a separate file in the same download directory. I would be happy if somebody could take my zip and the howto and clean up a little bit to make a PROPER zip in the official FreeDOS directory structure. Any volunteers? Yet another "call for helpers": Could somebody rewrite the batch files which come with UNDELETE so that I can remove the crappy COUNT tool from the package? Of course I could keep COUNT as a separate package if there is interest. My suggestion would be to use a nested loop of 2x ADD to count from 0000 to 25599 using errorlevels in two layers. Of course this will only work with FreeCOM then but that is okay for me :-p. www.coli.uni-saarland.de/~eric/stuff/soft/specials/factorial-calc387-add.zip Thanks :-) Eric > I would be happy to HELP whoever wants to add FAT32 to freedos > undelete - I just do not want to WRITE everything myself... > Here is some short and possibly incomplete overview of what you > would have to change to add FAT32 support: (...) ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user