Hallo Bart,
Question is how much of a difference can you tolerate? From you I get the impression that a 100K uncompressed kernel that compresses to 39999 bytes would be preferable to a 64K one that compresses to 40000 bytes.
;-) I could never use an uncompressed kernel that is below 64 KB. OpenWatcom makes the FAT32/80386 unstable kernel 66330 bytes long. The maximum size that UPX accepts is 65350 bytes. The difference is almost a kilobyte. How could we reduce the kernel further without crippling it? It's difficult!
I've seen compressed differences between Turbo C++ 1.01 and OW going down over the years. As for Borland, is it worth spending $59+postage for an unsupported product on an obscure Ebay site when so many free compilers are available?
It's not worth a penny because it can be freely downloaded from Vietnam (I posted the URL here ;-)
How about Digital Mars for instance?
A very good compiler in my opinion, backed by Walter Bright's C++ great compiler "know-how", but Tom once wrote that he gave up porting the kernel to it as he didn't see advantages.
I experimented a bit -- as it turns out once the uncompressed size goes to <64K you can stick on a SYS header to kernel.sys, UPX the already exeflatted SYS file and use that. For some reason in this case UPX is better than APACK by the way. Well I got it down to ~41300 bytes vs. your 40957. Now you're just lucky that 40957 is just below the 80 sector boundary but the difference is gone at 40961 bytes.
Does that < 64K kernel support FAT32? Hardly. The 40K one at my site does. So that's an incorrect comparison. Besides, aPack doesn't compress .SYS files at all. An incorrect comparison again.
Did I say it was bad? I just claim it's not the best tool for our job and has several other disadvantages.
You're right, but I have to put up with its disadvantages for one big advantage - KING SIZE! ;-)
Do Datalight really use it because the entropy is lower so the compressed size goes down?
Their DOS is not compressed at all, although I offered them some stubs to compress a < 64K kernel.
Of course they lost the "race" (MSVC, Intel, GCC) when Sybase took over and eventually stopped development. And from what I gather 11.x however introduced various obscure linker bugs, and loop optimization bugs (most are fixed in OW now). And OW still has years to catch up in terms of C++ standards (slowly getting there).
The information about loop optimisation bugs is very important. So, not all of them are fixed yet? For example a colleague of mine discovered such a bug which I reported to them. It's present in all Watcoms since 11.0 but wasn't there in 10.6!
Unfortunately, there are no bug-free compilers :-(
Regards, Lucho
------------------------------------------------------- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 _______________________________________________ Freedos-kernel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-kernel