My "belated" reply to an FD-User post by Bill Haught, dated 2014-07-18 12:36:17 and answered below by Tom Ehlert. I planned to stay silent, but all of the following "BEGS to be addressed!" --
>> As I mentioned earlier, Freedos requires a ATA legacy mode in BIOS, >> which I don't have. > > wrong. Tom is correct to say "Wrong". All DOS variants merely issue Int 13h I-O requests for BIOS disks/diskettes and could not care what "mode" a BIOS uses to do a request. Any hard-disk controller, from old IDE to new AHCI, is supposed to have a "legacy" mode that can handle such I-O so a PC can at-least "boot" from its BIOS units via "common" commands. >> Found this in the archives >> http://sourceforge.net/p/freedos/mailman/message/26625851/ >> >> "UIDE/UIDEJR can run AHCI drives on mainboards that have a "legacy" >> or "native IDE" setting for AHCI controllers, i.e. the drives can be >> addressed using standard SATA/IDE I-O logic." Obsolete. Since 2012, to handle MISERABLE "Virtual Box" which FAILS to emulate all SATA/IDE commands, UIDE and UHDD have had a /E switch, which tells them to "call the BIOS" for hard-disk I-O. /E helps for pre-1994 systems with no PCI BIOS (needed to get UltraDMA addresses), and it should handle disk I-O on AHCI systems which offer NO "legacy" controller settings for a mainboard. AHCI controllers are supposed to use boot-up "legacy" mode, until an operating-system driver ORDERS them into "Native AHCI" mode. UIDE/UHDD never issue that order, so "legacy" AHCI mode should remain active and should work fine for DOS! > right. UIDE doesn't work on AHCI controllers ... Tom is WRONG! UIDE/UHDD will run AHCI controllers in "legacy" mode and/or with their /E switch as noted above. What I REFUSE to do is add all the GARBAGE needed for Native AHCI in my drivers! Any AHCI system is supposed to offer some form of "legacy" mode, specifically for old drivers that cannot (or WILL NOT, in my case!) get upgraded. "El Cheapo" mainboards from Taiwan which lack any such "legacy" AHCI mode settings are in my opinion ABSOLUTELY NOT worth anybody's time! > ... and isn't required for FreeDOS. FreeDOS is perfectly happy > without UIDE. (UIDE might even get in the way of updating your > HD firmware.) Technically correct. But Tom is totally IRRESPONSIBLE to emphasize "[UIDE] isn't required for FreeDOS"! DOS was designed in 1981, and it still does single sector I-O for its "FAT" and directory sectors, let-alone using "normal" IDE (NO UltraDMA) for its Int 13h disk I-O, also let-alone ancient CD drivers like VIDE-CDD, OAKCDROM, etc., all of which use NO UltraDMA and do NO "calls" to a caching driver! Does our phrase "Grizzling SLOW" mean anything to all of you?? Hard disks, and especially CDs/DVDs, at-least need caching for their directories, which makes them twice as fast. Hard disks and CD/DVD drives also need UltraDMA, which makes them run twice-as-fast AGAIN! Most new BIOS chips have disk UltraDMA, but many still omit "Virtual DMA" logic, meaning that in protected-mode (JEMM386, etc.), the BIOS CANNOT do UltraDMA! "VDS" calls are the only way to get the 32-bit address of a "mapped" I-O buffer, when running protected-mode, since only JEMM386/EMM386 can say how they mapped memory! FOOLISH, for a BIOS to have UltraDMA without "VDS". But THAT is what Taiwan DOES! I wrote my original UDMA driver in 2003, added caching for directory sectors in 2006, full caching of ALL disk data later in 2006, and CD directory/data caching in 2007 (UDVD "calling" UDMA for CD caching), ALL of which improved system speed! In 2008, I asked my old friend Luchezar Georgiev how UIDE compared to the I-O speed of his Windows, and Lucho replied, "You beat THEM, 3 MONTHS ago"! Along with that, in 1989 I added "XMS only" caching, which permits caches up to 4-GB! And with my latest 26-Jan-2014 drivers, UIDE/UIDE can set 4 separate caches (2 in UHDD, re-assembly gives all 4), for CD/DVD "gamers" and others who want their data retained and not "discarded" due to other device I-O into only one cache! My drivers do not use "Write Back" (delayed writes, faster in some cases). But this keeps them SMALL, versus the 40K+ of SMARTDRV, or 80K+ of Norton NCACHE2. UIDE/UHDD do 70% of disk I-O directly to/from their XMS memory buffers, saving unneeded moves; they will cache diskettes and can be called to cache data for other device drivers; etc. In summary, I did ALL I COULD, using only 5K bytes of run-time logic (NO gazillion bytes of "C", and only 1K or upper/DOS memory, as most of my logic can go in the HMA!), so my drivers would be a "help" for any and all DOS variants! Granted, UIDE/UHDD may not be appropriate for "diagnostic" or "test" work, to "re-flash" hard-disk EEPROMs (quite RISKY, in my opinion!), or for other unusual cases. But, if you want FreeDOS (or other DOS variants) to run REALLY SLOW, try omitting any-or-all of my drivers and "see what happens" to your system performance! I AM NOT trying to "sell" my drivers nor "feather my own nest" as we say. But I do hope the above, "Once and for all", ANSWERS any such irresponsible comments like "[UIDE] isn't required for FreeDOS"!!! ------------------------------------------------------------------------------ _______________________________________________ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user