Optimizing DOS (Or: A New Use for Ancient Equipment). I was thinking yesterday, I wished I had a computer that could just hold disk images and do data recovery. Then I remembered I had a DECpc 320P laptop laying under my desk. I cranked it up. MS-DOS 5, 20 MHz 386sx, 80-meg drive, 6 MB RAM, grayscale VGA display. So I installed Norton Utilities 8, the main thing I wanted to run (I had a retail box sitting on my shelf), then of course I set out to optimize it. Optimizing DOS is really easy: it’s just a question of disk optimization and memory management. I cleaned up the root directory, pulled the extraneous files in the C:\DOS directory (the .cpi files, all the .sys files, all the .bas files). Then I ran Speed Disk, setting it to sort directory entries by size in descending order, put directories first, and do full optimization. It took about 30 minutes. If I’d been really bored I could have mapped out what executables are most important to me and put those first. Since DOS doesn’t track file access dates it can’t automatically put your frequently accessed files first like Speed Disk for Windows does.
Of course when I installed Norton Utilities 8 I installed NDOS, its command.com replacement. Built-in command history, improved resident utilities, and thanks to its memory management, it actually uses far less conventional memory (but more memory total) than command.com. That’s OK; with 6 MB of RAM I can afford to give up a fair bit of extended memory for better functionality.
Once I was happy with all that, I also attacked the startup files. I started off with a basic config.sys:
Then I went into autoexec.bat, consolidated the PATH statements into one (it read: PATH C:\WINDOWS;C:\DOS;C:\DOS\u;C:\MOUSE) and added the prefix LH to all lines that ran TSRs or device drivers (such as MOUSE.EXE). Upon further reflection, I should have moved the Mouse directory into C:\DOS to save a root directory entry.
I added the NCACHE2 disk cache to autoexec.bat– NCACHE2 /ext=4096 /optimize=s /usehigh=on /a a c /usehma=on /multi=on. That turns on multitasking, enables caching of both C: and A:, tells it to use 4 MB of memory, use high memory, and use extended memory. My goal was to use as much memory as prudently as possible, since I’d be using this just for DOS (and mosly for running Norton Utilities).
I also set up a 512K RAMdisk using RAMDRIVE.SYS (devicehigh=c:\dos\ramdrive.sys 512 128 4). Then I added these lines to autoexec.bat:
Now when an app wants to write temp files, it does it to a RAMdisk. The other parameters tell it to use 128K sectors to save space, and put 4 entries in the root directory, also to save space. With DOS 5, that was the minimum. I don’t need any more than one, since I’m making a subdirectory. I could just point the temp directory to the root of D:, but I’d rather have dynamic allocation of the number of directory entries. This setting is more versatile–if I need two big files in the temp directory, I’m not wasting space on directory entries. If on the other hand I need tons of tiny files, I’m guaranteed not to run out of entries.
It’s not a barn burner by any stretch, but it’s reasonably quick considering its specs. Now when someone trashes a floppy disk, I can just throw it in the 320P, run Disk Doctor and Disktool on it (and in a pinch, Norton Disk Editor), copy the data to the HD, then throw the recovered data onto a new, freshly formatted floppy. I’ll only use it a couple of times a year, but when I need such a beast, I need it badly. And if I have the need to run some other old obscure DOS program that won’t run on newer machines, the 320P can come to my rescue again too. It runs the software well, it boots in seconds–what more can I ask?
I could have done a couple more things, such as a screen accelerator and a keyboard accelerator . Maybe today if I have time.
I was tempted to put Small Linux ( http://www.superant.com/smalllinux/ ) on it, but frankly, DOS 5 and Norton Utilities 8 is more useful to me. I’m not sure what I’d do with a non-networkable Linux box with only 6 MB RAM and a monochrome display.
A useful (but unfortunately dated) link. I stumbled across this yesterday: The BIOS Survival Guide , a nicely-done guide to BIOS settings. Unfortunately it stopped being maintained in 1997, so it’s most useful for tweaking very old PCs. Still, it’s better than nothing, and most modern PCs still have most of these settings. And reading this does give you a prayer of understanding the settings in a modern PC.
If you want to optimize your BIOS, this is about as good a starting point as you’re going to find online for free. For more recent systems, you’ll be better served by The BIOS Companion, written by Phil Croucher (one of the co-authors of this piece.) You can get a sample from that book at http://www.electrocution.com/biosc.htm .
New iMac flavors. Steve Jobs unveiled the new iMacs this week. The new flavors: Blue Dalmation and Flower Power. Yes, they’re as hideous as they sound. Maybe worse. Check the usual news outlets. They’d go great in a computer room with a leopard-skin chair, shag carpet, and lava lamps. And don’t forget the 8-track cranking out Jefferson Airplane and Grateful Dead tunes.
I think the outside-the-box look of Mir, the PC Gatermann and I built as a Linux gateway (see yesterday), is far more tasteful–and that’s not exactly the best idea we ever had.
Dear Mr. F.,
I have enjoyed learning from your book, Optimizing
Windows, and it’s helped my 98se system be a LOT better.
However, the above optimized PATH statement:
Er..that little ‘u’..is a typo, right? Not sure.
I continue to read as much as I can of what you
have with great interest.
Very Truly Yours,
That line got mangled when this particular post got imported into this database. It should read: path =c:\windows;c:\dos;c:\nu;c:\mouse
The only reason c:\nu is in there is because I had Norton Utilities 8 installed.