Message-Id: <200308221152.h7MBqmj30391@delorie.com> From: "Michal H. Tyc" Organization: BTTR Software Date: Fri, 22 Aug 2003 13:28:23 +0200 X-Mailer: Arachne V1.71;UE01 To: opendos AT delorie DOT com Subject: Fix for OEM DR-DOS 7.04/7.05 rename bug; FAT32 access MIME-Version: 1.0 Content-type: text/plain; charset=ISO-8859-2 Content-transfer-encoding: 8bit Reply-To: opendos AT delorie DOT com Hello, Sad to say this, but the OpenDOS is almost dead for long time (fortunately, it isn't also flooded with infected and s*am messages). Virtually all technical discussions moved to FreeDOS list, as there seems to be no wide interest in purely DR/OpenDOS technical topics. Lack of news from DeviceLogics is probably one of the reasons. Anyway, I'll try to start a thread here. As probably many of DR-DOS users, I have to use other operating systems--at least from time to time--and install them on my machines. Linux is no problem of course. To allow peaceful co-existence of DR-DOS and Win9x, I used to set all my DR-DOS partitions as type 0xD6 (pseudo-secured FAT16), which prevents Windows from seeing them and putting long filenames on them (this solution was suggested by Matthias quite long time ago). To save my limited hard disk space, my Windows partitions are formatted as FAT32, so to copy files between Windows and DOS I need the DRFAT32 drivers. This solution works of course, but isn't particularly convenient due to large memory footprint of DRFAT32.EXE redirector (which is not unloadable, except of task deletion when loaded locally in multitasking mode). So I decided to try the OEM DR-DOS 7.04/7.05 with native FAT32 support (shipped with some Ontrack's and Seagate's disk recovery tools) as an alternative solution. It is known that this version of BDOS has broken the rename/move function, which typically reports "Cross-device rename" error (#17) and refuses to work. Just for leisure [why do I have so little time for it ;-)], I tried to find the reason of this strange behavior, locating the rename function in BDOS code, disassembling it and using OpenDOS 7.01 sources as reference. I seem to have found the reason of the error, and even managed to prepare a binary patch that fixes it [and reduces code size by a few bytes, by the way ;-)]. It hasn't been tested enough yet, but seems to work in simple cases. At least REN from command line and EDIT can be used again. However, there are still problems with FAT32 disks. One of my disks works, but the amount of free space reported by DR-DOS 7.04/7.05 is different than by MS-DOS 7.10 and DR-DOS 7.04 + DRFAT32. My other FAT32 disk is not accessible at all (DIR displays garbage); curiously, it also causes DRFAT32.SYS to hang immediately after loading. If anyone is interested in details of this fix, plese contact me via private mail--remember that DR-DOS 7.04/7.05 is not intended for re-distribution or use other than with the mentioned OEM tools. With best wishes to all DR/OpenDOSers (I hope there are still some around), Michal