[RM note: Most people will be interested in the portion of this file containing my 1995 expose on technical aspects of VFAT.]

================================================================
Excerpted from...
BLUE NOTES -- Magazine of the San Francisco PC Users Group
Editor: Rick Moen, rick@hugin.imat.com (415-543-6475)
Production/design: Sylvia Rippel, syr@hooked.net (415-994-0745)
================================================================


Editorial from the September/October 1995 issue

A First Look at You-Know-What

by Rick Moen

The big news of the past month or so has, of course, been Microsoft's release of Windows 95. I've started to write preliminary evaluations several times, and thrown each away as somehow missing the mark. Finally, I figured out where the problem lay: Two different evaluations are called for — of Win95 by itself, on its merits as a relatively modest upgrade to Windows 3.1, mostly for home users, and separately on it as the subject of a billion dollar product launch promotion ($200 million from Microsoft itself), with comments on its place in the business world. This product must be measured against both sensible, realistic expectations and the overblown ones we've had thrown at us for the past three years.

For the Home Windows 3.X User — Not Bad

I've now installed this puppy a few times, and have made a point of using it at least 1/3 of the time on my main personal machine. In a nutshell, it's serviceable, though of debatable benefit. All of Windows 3.1's hardware requirements go up a notch: Don't even think of installing this unless you have at least a 486 with 8Mb RAM and a 240Mb hard drive. Everything's bigger and more ponderous, including planned applications. If you have a 386 or 4Mb RAM, forget it. Get the CD-ROM version, not the 13-diskette one, and consider getting the bundle with Microsoft "Plus", which has some nice extras. Those users who have cheap or slightly non-standard hardware (and they're probably unaware of this fact) may encounter show-stopping driver problems: Vendors' return rates on Win95 have reportedly been high (maybe 20%, though the figure is disputed).

Installation

Win95's installer is extremely determined to work its way. As long as you're OK with that, you'll probably have few problems. It blows away any boot manager you might be using (to select among distinct startup volumes on your hard drive at boot time). It also erases part of your DOS directory and modifies some utilities in it, overwrites your Windows directory, and seeks out and destroys setups for dialing and using Internet Service Providers other than Microsoft Network, all without warning. Moral: Make safety copies of all important setup files before installation, and you'll probably be fine [1]. It looks around for non-DOS operating systems, such as OS/2, Linux, or NT, even on volumes Windows can't use, and cheerily offers to remove them. Beware! The default choice is "Yes", so you're exactly one "Enter" keystroke away from potentially staggering losses.

If you want the absolute minimum of hassle potential, install Win95 to a freshly made drive volume. Since all installers are fallible, an empty, unfragmented, virus-free volume makes the ideal installation target. Failing that, at least defragment and virus-check your hard drive; good defraggers and virus-checkers can be gotten from the club software library or my BBS. The viruses that give Win95 immediate grief (those that hide in your hard drive's master boot record, then write themselves onto Win95's diskette 2, making it unusable) can be easily eliminated by booting from your DOS 5 or 6.x floppy and using the undocumented (and harmless) command "FDISK /MBR" to rewrite the master boot record.

If you have the diskette version (as I did, a spare copy from Third Wave Consulting), you really ought to install from a duplicate diskette set. Remember: I always recommend leaving master diskettes permanently locked and pristine, and using working copies. However, since disks 2-13 are in a new "MDF" format to squeeze in as much as possible, DOS/Windows's copying tools won't do it. The shareware utility CopyQM for DOS, however, does it just fine, as we know from stalwart reviewer Yves Barbero's experience. Once you have a working set, and a defragged and virus-checked system, insert the boot disk and let 'er rip.

The Hardware Sniffer

The installer is really slick. Five big points for that! If you don't have hardware problems or missing drivers, it's absolutely a no-brainer. I was particularly impressed when Win95 found and identified my exact model of external modem. Contrary to the common misconception, this has nothing to do with the much-hyped (and problematic) Plug'N'Play standard, on which the installer places little reliance. Instead, a "hardware sniffer" routine directly examines and scouts out your machine, checking what it finds against a huge database on known hardware, for five minutes or more. (My new ATI video card was analysed with ease, and Win95 allows you to switch video modes on the fly. Nice!)

The downside is that this ambitious and mostly successful routine can do a serious pratfall, when it fails badly. I've seen the installer freeze totally upon encountering an unsupported HP DAT tape drive (which it should ideally have ignored). Horror stories relayed on the Internet (which I hope and expect were freakish exceptions) include trashed hard drive partition tables and erased ROM BIOS chips. However, the average home user should have a very smooth ride, especially if the user takes the precautions I've outlined. There are several installation options for different user profiles, but note that "Complete Install" is not among them. To make sure that all components get installed (as I did), you must select Custom Install and check all options in each category, individually.

The User Interface

Long-time Windows users may find the user interface disorienting: Old things are given new names and appearances without much reason. For example, "shortcuts" are little more than icons, and PIF files for DOS programs are still present, but are concealed. As with icons in Windows 3.x, renaming a file makes any shortcuts that point to it non-functional. (The Win95 engine will search for such moved files, taking much time doing so, but even this won't work across drive letters.) Files can have names of up to 256 letters — sort of — but still rely on three-letter extensions. More on that, later.

The right mouse button brings up an object's "properties" (which are pretty much exactly Windows icon settings), except that some objects don't have properties, such as the Start menu. (Access to some aspects of the Start menu are available from Properties on the adjacent Taskbar, but other aspects can't be gotten to, at all.) Drag and drop and Clipboard metaphors work more places than they used to, but are inconsistent: I.e., dragging an .EXE makes a shortcut, while dragging a document moves it. Same action; different result. "Cutting" a file to Clipboard in Windows Explorer (the substitute for File Manager), then cutting a second file, cancels the first cut without notice (contrary to how Clipboard works elsewhere). Many operations are from a cascading menu in the bottom left that is called "Start", even though the machine is already started. Strangest of all, to shut down the system, you use the Start menu. Maybe this stuff will grow on me, but it seems arbitrary and peculiar, for now.

Then there are the standard icons: My Computer, Network Neighborhood, Inbox, Microsoft Network, My Briefcase, and Recycle Bin. (Am I alone in hearing Fred Rogers's voice when I say My Computer and Network Neighborhood?) All of these except Recycle Bin can be renamed to suit, but only MS Network and My Briefcase can be tucked away elsewhere. As I write this, my desktop is cluttered with unmovable icons for which I have no use: Network Neighborhood finds no network volumes on my TCP/IP (Internet-type) network, making it purposeless, and Inbox (a post office for faxes and e-mail) cannot read my Internet e-mail without add-ons that weren't furnished. I'd like to replace the Inbox icon with Eudora and a good fax package, but Win95 won't let me move Inbox.

The My Computer icon gives access to the contents of each drive letter and several system folders. In this, it overlaps functions of the Start button and the Windows Explorer app that's reachable on the latter. It's unclear why we need these three almost-identical-but-not-quite ways of getting at files and applications. For that matter, it's unclear why there must be a separate container for network drives (Network Neighborhood). It would be simpler for them to show up among regular drives when they're available.

When I maintained several machines at Blyth Software running versions of the "Chicago" Win95 beta, the user interface was wildly different between beta releases, and was obviously being fooled with right up to the last minute. My opinion is that it still needs work.

The Registry

All that stuff that used to be in multiple INI files is now in a database (stored in binary format, in SYSTEM.DAT and USER.DAT) called the Registry. Pretty much the whole shooting match of internal Win95 settings is here, so it's pretty critical. God help you if it gets corrupted, so it's not a bad idea to occasionally open up RegEdit and "export" to a text file, for safekeeping. On my fairly generic setup, the export text file weighs in at 651kb.

Overall, for someone used to Windows 3.x on a home machine, Win95's a pleasant if occasionally odd upgrade, given adequate hardware, and barring occasional installation troubles. However, its results in more complex situations, and how it measures against the hype, are a different matter, and we'll turn to that, next.

The File System

The biggest single disappointment in Win95 is that Microsoft had a golden opportunity to offer a better file system, but didn't. It uses the same aged FAT system that DOS does, which was designed for floppies, and whose sole advantage on hard disks is simplicity. FAT wastes increasingly huge amounts of space on bigger drives (200-300Mb unusable, typically, on a 1 gigabyte drive) through inefficient allocation of space [2], is very vulnerable to loss of files through cross-linking, and is slow. Had Microsoft provided an option to use its better HPFS or NTFS file systems, Win95 would probably perform much better and have been able to offer better than skin-deep 3.1-icon-style file objects.

Microsoft's literature promotes the notion of a new, distinct file system, called "VFAT". In reality, this is just plain old FAT with its usual 8.3 filenames; the long portion of Win95 filenames is kept track of via a "link" file in a hidden directory [3] — amazingly similar to how Novell NetWare file server volumes store foreign filename information, but less seamless. All file "type" information still consists solely of a file's three-letter extension. If two applications both want to use .DOC or .INF, that's too bad — same as in Windows 3.1.

People have been reporting horror stories involving backups not working, often finding out only after crucial restore operations that long filenames have been lost and shortcuts no longer work. This results from the backup utilities not picking up the Registry, the link file information, or both. Exporting the Registry will compensate for the first problem, and there's supposed to be a utility called LFNBACK (Long File Name Backup) to alleviate the second, but it wasn't included with the Win95 diskette version.

You might be tempted to use the included Win95 Backup utility — but it supports only certain QIC tape formats (and not the big ones), and none of the faster SCSI tapes (including DATs) used in business.

Help! Help!

I spent a fair amount of time in the Win95 built-in help screens, looking for information such as how long filenames are stored, what a "shortcut" really is, how to set up connections to Internet Service Providers other than Microsoft Network, and how to move unwanted system objects from my desktop. There was not a word relevant to such concerns, but I noticed something more important: There's extremely little technical information, just as in the included 95-page manual, "Introducing Windows 95". Apparently, to get real documentation, you must also buy the "Win95 Resource Kit", for $49.

I say this is important because it's in line with what I've seen elsewhere in Win95: This product is aimed squarely at computerphobes. Microsoft Bob 2.0 is upon us.

The Hardware Sniffer, Revisited

As previously noted, Win95 aims to keep track of all your hardware, and does a pretty good job, most of the time. I was intrigued by the Device Manager, which displays hardware resources — which are free, and which others are in use where. The temptation is to rely on it to "take the mysteries out of hardware", but this will bite you. I compared Device Manager's results with my careful maps of my hardware, and found a number of errors. The less important ones concerned I/O ports, where a phantom joystick port was shown, plus a couple of dozen non-existent ports shown as "in use by unknown device", and my video card's I/O port wasn't found. Of moderate concern is that it couldn't find my highly standard 3Com ethernet board at all, and mangled the port settings when I told Win95 of it. Users of network cards generally should take care.

However, the significant errors concerned hardware interrupts (IRQs), which happen to be the most problematic hardware resource. IRQ2 is shown occupied by "Programmable interrupt controller", but in fact is free and available (and is the same as IRQ9). However, more serious is the claim that interrupt 7 is free, although it's in fact assigned in hardware to the first parallel printer port.

Win95, like other recent PC operating systems, prints to LPT ports by "polling" them, talking to their port addresses without relying on interrupt services that, in cheaper hardware, may not be available. However, merely because Win95 doesn't need IRQ7 doesn't mean interrupts aren't generated by the hardware, when you print. Device Manager will mislead many users into thinking that LPT1's IRQ7 and LPT2's IRQ5 are available for use in sound boards, ethernet cards, and the like. Then, some day, such a device and LPT1 will both set interrupt 7, twice the intended current will flow through the interrupt circuitry, and presto! Instant damaged motherboard.[4] I've seen a few of these, and now expect I'll see lots more.

I went through that rather hairy technical analysis to illustrate a point: Win95 pervasively works at making everything appear simple, to convey the impression that the user needn't know anything about his computer and shouldn't want to. This might work if Win95 were able to wrap the user in a safe, friendly cocoon, but it's an empty promise.

Win95 on Networks

LAN-based TCP/IP networking went in smoothly and intuitively on my Pentium, and appears to be fairly high-performance. A few basic TCP/IP applications were provided (notably ping, telnet, and ftp), but nothing like the suite of apps one might hope for. Shareware is starting to fill in the sizeable gaps. It's a good thing that I didn't have an Internet provider dial-up to migrate from Windows 3.1, since Win95 deletes such setups without notice, and substitutes Microsoft Network.

NetWare users are in for an interesting time: Win95's NetWare client doesn't yet support NetWare Directory Services, making it semi-functional. (An improved version is in beta testing.) Once logged into a NetWare LAN, users will have to watch out for one nasty pitfall: Win95 offers a radio-button to enable "SAP" (advertising of NetWare type resources to the LAN). If you then make the tactical error of renaming your machine to an existing server's name (say, intending to give a colleague easier access to your file volumes), you will block all access to the server. Corporations are already thrilled about this recently-discovered gotcha.

I've now wended my way through installing dial-up for Internet Service Providers, using the PPP session protocol. It works OK, though it required detailed instructions from the ISP, and some tools helpful for running such connections are included only in Microsoft's Plus add-on pack. If you use an ISP, expect to have some work ahead of you.

Applications

Most of your existing applications will still run, though Microsoft has a list of hundreds of them that won't, or have "problems". (Among the many entries are Adobe Illustrator, Photoshop, Quattro Pro, PC Anywhere, Corel Draw, and LANtastic.) Our friend the GPF is still very much with us, often under yet another new name, "Fatal Application Error". None of the alleged wonders of improved stability and multitasking of Win95 applications are available as long as any one older Windows app is running. Even with only Win95 apps running, I noticed that background BBS downloads in HyperTerminal had problems any time I formatted floppies; and sending two print jobs to my LaserJet while downloading files resulted in "try again later" (out of memory) messages. All this was on my Pentium PC with 32Mb RAM. Flashback: Just for kicks, some months ago, I put OS/2 Warp 3.0 on a ThinkPad 486 laptop with 4Mb of total RAM, then started a BBS download in background in HyperAccess Lite, and formatted floppies in foreground. Never a skip, no fuss, no muss.

Anyhow, we're supposed to throw away the largest software base in history (Windows apps) to get all-new Win95 ones, to get the real benefits. However, what they don't tell you is that the former promise that all such apps will run on WinNT has been evaporating. Remember NT? Microsoft still wants us to end up on it, Win95 being strictly an interim offering. All Win95 applications that use VxDs (virtual device drivers) are guaranteed not to run on NT, and it'll probably end up that lots of NT apps won't run on Win95, and vice-versa. Isn't this fun?

The Registration Wizard

A lot of paranoid claims have been made about the Win95 Registration Wizard, provided as an electronic equivalent to the usual product registration postcard. It does not read your entire hard drive building an inventory of your software, for example, and it's true that the user has the option of omitting the inventory that it does build. However, just because you're paranoid doesn't mean they aren't out to get you: The RegWiz does examine your hard drive for specific directories and program files within them, comparing them against an encrypted database, looking for about 100 particular applications Microsoft's interested in, including some of Microsoft's own apps, and particular major competitors, including major competition for its new Microsoft Network on-line service: AOL, Prodigy, CompuServe, Spry Internet in a Box, and NCSA Mosaic. Ten applications get inventoried on the registration card, and the default is to include them.

You Make a Grown Man Cry

Corporate MIS guys are still extremely leery of this product. Clearly, I think they have awfully good reason. The NetWare glitch alone would make most such folk turn pale.

There have been numerous alternative suggestions for Win95 theme songs, instead of "Start Me Up":

Then there are the lyrics from the Stones's "In Another Land":

Then I woke.
Is this some kind of joke?
Much to my surprise
When I opened my ey-ey-ey-ey-eyes . . . .

Christmas in October

I couldn't possibly close off without conveying some good news. Over at Barnes and Noble, you can now get a good book entitled DeScribe Word Processor v. 5 Users Guide (ISBN 1-56529-885-3), on that heavy-duty word-processor, for $49 (list). The attraction is that the book includes a CD-ROM with full-blown copies of DeScribe Voyager 5.0, for Windows, Win95/NT, and OS/2. That's an incredible bargain. Be sure to consider it, if you'd like to try out another word-processor — a very nice one, indeed.

— RM.

[1] There's an option to save your DOS/Windows "setup files" as a pair of large "uninstall" files, in case you might wish to remove Win95. Better is the dual-boot option — not documented by Microsoft — described by Yves Barbero in this issue.

[2] Afterthought at 25 March 96: One way to address this problem of grossly inefficient allocation is drive compression — Stacker, the bundled DriveSpace software, and the like. (Microsoft's latest effort, DriveSpace 3, is provided only with the Plus add-on.) However, a huge price must be paid for such schemes in performance and in reliability of data access, which I find unacceptable. A better compromise, if one's options are limited to FAT/VFAT, is to use multiple partitions, such that each volume's cluster size is kept reasonable. For example: (1) a 127-255Mb drive C: for just the operating system, (2) a 511Mb drive D: for just applications (large clusters being suitable for the relative few mostly large files), and a 127Mb drive E: for just data (small clusters being suitable for a data volume's relatively numerous mostly small files). As a side-benefit, backups will be rendered simpler — as will operating system reinstalls, since you will always have the option of blowing away and re-doing the entire OS volume.

[3] This particular information was discovered after publication to be in error, as detailed in the following month's editorial, included below.

[4] Afterthought at 25 March 96: Burning out of motherboard VLSI chips could either happen or not, depending on which model for interrupt circuitry, edge-triggered or level-triggered, the motherboard uses. However, why take the chance?



Software review from the November 1995 issue

CopyQM 3.20

Sydex, Inc.
P.O. Box 5700
Eugene, OR 97405
(503) 683-6033
(503) 683-1622 (fax)
(503) 683-1385 (BBS)

At a Glance

Rating: four disks (Blue Notes's top rating)
Price: $25 shareware, $75 commercial "pro" ver.
System Requirements: Generic PC.

Reviewer: Yves Barbero, (415) 285-4358

Pro: Does everything related to copying diskettes.
Con: None.

A command-line cowboy's dream, CopyQM 3.20 allows for copying, verifying, and multiple copying of virtually any diskette format, including the DMF format Microsoft uses on the beta version of Windows 95. [1]

Since Microsoft has the gall to charge the general public $32 for what is essentially a semi-developed beta, it's only fair that these folks should have the means to make a backup copy. CopyQM 3.20 provides that means.

Assuming that CopyQM resides in its own directory, and that your 1.44 drive is B:, the command is

C:\COPYQM\COPYQM B: BLIND COUNT=1 REPEAT

Changing the count number allows multiple copies of each diskette. Repeat means that you'll be asked for the next master, rather than having to go in and out of the program. For a list of command line options, type COPYQM /HELP at the command line. What could be simpler?

Non-standard format copying using "blind" does take about ten minutes per diskette, so have a television handy, to watch Star Trek or some other techie soap opera.

Although I was looking for a way to back up a beta copy of Windows 95 when I rediscovered this fine Sydex product (it is a different company than the publisher, Sybex), I should point out that you can very reliably do a lot of other things related to floppy-disk copying. It lends itself to automation of processes through its rich variety of command-line options (which can be set up in a batch file). You can create images of a floppy on the hard disk (as you could with their previous product, "Teledisk") for transmission over a modem, byte-by-byte verification, copying of Apple high-density diskettes, etc. The "pro" version has other features ideal for a small software company to replicate its products, including-copy protection schemes.

Sydex is no fly-by-night operation. It's been around for years, and has consistently put out fine shareware products, including the famous 22DISK utility that translated most CP/M formats to DOS and made the transition to DOS fairly painless. If you don't have access to a BBS, go ahead and send them the $25 for CopyQM. You'll get a printed manual with it. Unlike the case with most shareware companies, you can trust Sydex products to work fault-free using the "blind" option.

[1] Ed. Note: This article was written before Windows 95's general release. — RM




Article from the September/October 1995 issue

Having Your Cake and Eating, Too

by Yves Barbero

The release of Windows 95 left me (and other power users) in a strange dilemma. On the one hand, the new interface didn't promise to do anything I couldn't already do. With QEMM by Quarterdeck and the multiple-booting capabilities of DOS 6.22, I was handling disk management very nicely, thank you.

I could run any program from old favorites like the GEM-based Ventura Publisher 3.0 to the most powerful Windows application. Having to buy an extra eight megabytes of RAM to run Adobe Photoshop 3.0 was a mere, if necessary, annoyance. It didn't require me to change my lifestyle.

I even have a boot option that degrades the amount of conventional memory, so I can run old, and well-loved, time-wasting games like Solitaire Royale for DOS.

On the other hand, all the software manufacturers seem to be running like lemmings over the cliff called Windows 95. I'm a professional computer consultant, and have to keep up with 500-pound gorillas like Bill Gates.

I actually built a second computer from scraps on my shop floor, to house this new software goblin. I did resent the fact that I have a used machine that I can't sell because I need it for learning purposes, and that second machine is pretty slow with a small hard disk. Did I dare trust that Windows 95 would handle my Rube Goldberg-like accumulation of programs, paths, and configurations?

Well, Microsoft has a reputation of ignoring everyone else's needs. Other software publishers are continuously scrambling to adjust their products to make them work with changes made to Windows to accommodate Bill Gates's lesser products (Word, Excel, Access, etc.).

I knew, instinctively, not to trust this new walrus of a product. Similarly, a lot of businesses and individuals are waiting cautiously until it's truly developed (six months to a year down the line). Only fools rush in.

I decided that I had to install Windows 95 on a modern machine fairly soon. Since I didn't have the two grand to plop down for a proper second machine, I bought a pile of books (about $80 worth), and began reading about a week before the official release.

I found out I could do a dual boot. I could have my old system intact, and run Windows 95 as an option. My eyes lit up. It works! Here's how you do it . . . .

Your computer should be at least a 486DX/33 with eight megabytes of RAM. A 486DX2/66 with sixteen megabytes or better is ideal. A hundred megabytes of free hard disk space or more is also a good idea. A CD-ROM will save you a lot of time. (I had to re-install Windows 95 four times before I finagled it the way I want it.)

1. Defragment your hard disk, and check it thoroughly. Norton 8.0 is best, but the stuff that comes with DOS is okay.

2. Clean out your hard disk of garbage.

3. Back up your AUTOEXEC.BAT and your CONFIG.SYS on bootup diskette. (Make a system disk.)

4. If you have a multiple-bootup setup, strip it of anything but a simple bootup. Eliminate all TSRs from your new AUTOEXEC.BAT. You can leave necessary device drivers. Windows 95 knows how to handle these.

5. Start the Windows 95 install process from inside your existing Windows. Choose "Custom". Make sure you choose a directory different from WINDOWS. I used WIN95. This will leave your old Windows intact.

6. Answer YES when asked if you want to make a startup disk. This will allow you to uninstall Windows 95, if need be, and restore your old system as it was. The Uninstall procedure is one of the best features of Windows 95.

(All this will take about an hour.)

7. After you've completed the process, go out to DOS, and change to the root directory. Change the attributes of MSDOS.SYS:

ATTRIB -R-A-S-H MSDOS.SYS [Enter]

With your favorite ASCII editor, Add the lines, under "options" . . .

BootMulti=1
BootDelay=5
BootWin=0

BootMulti=1 tells the system you want dual boot.

BootDelay=5 tells the system to pause five seconds. The default is 2 seconds. You can make it more.

BootWin=0 tells the system you want to boot into your old system by default. BootWin=1 would go into Windows 95 by default (to be used by the truly masochistic only).

8. Now save it, and reset the attributes:

ATTRIB +R-A+S+H MSDOS.SYS [Enter]

9. Cold boot the computer, and put your hands in your pocket.

10. When you get to a C: prompt, copy your old AUTOEXEC.BAT and CONFIG.SYS from the backup disk you made (remember), and warm boot.

You should have your old system. Satisfy your curiosity, and make sure all your old stuff works the way it should. Don't confuse the dual-boot option with the multi-boot setup that's possible with DOS 6.X. Dual-boot means you go into DOS or Windows 95. Once in the old DOS, you still have any multi-boot setup you had before.

11. Cold boot your computer, and press F4 during the five-second pause after the RAM count, just before the "Starting MS-DOS" statement. Now you'll be in Windows 95. Cold boot is preferable to warm booting if you use QEMM. It has a quick boot that would bypass the dual boot. Cold boot is safe all around.

When you exit Windows 95, if you do nothing, you'll return to your old system.

Notes:

1. The described setup will not automatically load your old Windows programs to Windows 95, but you're just having a look-see, anyway.

2. DOS programs using a lot of TSRs don't work very well under Windows 95. Use your old setup for them.

3. Don't register Windows 95 by modem, unless you want Bill Gates to have a lot of marketing information on you. Use the postcard.

4. I've been getting a busy signal for days on the technical support that's supposed to help in installing Windows 95 (Late August, early September). Don't count on it.

5. Of all the books I bought, two stand out:

Upgrading to Windows 95, by Charlie Russel and Sharon Crawford, Sybex, $22.99. (This book has a detailed chapter on making various dual boots, including UNIX. This is where I got most of my information for this article.)

Your Windows 95 Consultant, by Ed Jones & Derek Sutton, SAMS Publishing, $19.99. (Good general help.)

6. The book that comes with Windows 95 will only show you how to navigate around Windows 95, and not nearly as well as the two books described above. The on-line help is very basic.

Anybody need a used computer?



Article from the November 1995 issue

Having Your Cake and Eating It, Too — Revised

by Rick Moen

Last month, veteran reviewer Yves Barbero described how to install Win95 into a separate directory from Windows 3.x, retaining one's ability to alternatively boot to DOS 6.x/Windows 3.x using Win95's dual-boot option in MSDOS.SYS. The one disadvantage to the approach that he noted was that Win95 is unable to "migrate" your program groups, applications, and system settings from Windows 3.x, which is possible only by overwriting Windows 3.1 (installing Win95 into its base directory). This is OK if, as Yves puts it, "you're just having a look-see, anyway."

A refinement to this scheme is, however, possible by which Win95 migrates Windows 3.x without destroying it. This might be highly useful if you're going to use Win95 for more than just a look-see, but need to run, using Windows 3.x, apps that run poorly or not at all on Win95, or if you simply dislike having your freedom to switch operating systems restricted. (Note: Make sure you have adequate disk space to keep both around.) Here's how:

1. Exit Windows (assumed in this example to reside in C:\WINDOWS), and copy its entire tree, including any empty subdirectories, to C:\WIN95:

xcopy c:\windows\*.* c:\win95 /s /e

2. Make a copy of DOS for safe-keeping, since Win95 will wipe out parts of DOS, and modify others. (XCOPY C:\DOS\*.* C:\SAVEDOS /S /E)

3. Using an ASCII text editor, change all references to "C:\WINDOWS" to "C:\WIN95" in AUTOEXEC.BAT, CONFIG.SYS, and all .INI files anywhere in the new C:\WIN95 directory and its subdirectories. You may also wish to find and similarly modify any .INI files in application directories elsewhere. The following DOS command will locate all .INI files on your C: drive:

dir c:\*.ini /s /p

4. Restart, and launch the copy of Windows 3.x you've created in C:\WIN95. Open each icon's properties, in turn, and change any "C:\WINDOWS" references to "C:\WIN95".

5. Although the Registry is little used in Windows 3.x, you should make the same changes there, by opening "Run" on the File menu, and entering "REGEDIT /V".

6. You are now done preparing your "migration" copy of Windows, and can install Windows 95. Don't forget to specify that Win95 should install itself into C:\WIN95, not C:\WINDOWS.

7. Restore DOS by deleting the C:\DOS directory, then renaming C:\SAVEDOS to C:\DOS. You can do this in File Manager or Win95's Windows Explorer, for example.

8. You'll be using dual-boot, and Win95 manages your startup files for DOS 6.x/Windows 3.x by storing them with a .DOS extension. Accordingly, while still in Win95, you should now edit CONFIG.DOS and AUTOEXEC.BAT to make all of their references to C:\WIN95 once again point to C:\WINDOWS.

9. Enable dual-boot, as Yves described. To recap, open C:\MSDOS.SYS in a text editor, after turning off its hidden, read-only, and system file attributes, and add "BootMulti=1" in the [Options] section. (If you see "BootMulti=0", change the 0 to 1.) Save.

You are now finished, and have fully functional and configured setups for both MS-DOS 6.x/Windows 3.x and for the MS-DOS 7.0/Windows 4.0 configuration that comprises Windows 95. Upon reboot, when you see "Starting Windows 95 . . .", quickly hit F8, and a menu will let you select which setup to run.

(This set of instructions should not be confused with those in the November Blue Notes editorial, which explain how to run either Windows 3.x or Win95's Windows 4.0 shell on top of the MS-DOS 7.0 shipped as part of Windows 95. To do that, perform the above steps, except do not enable multi-boot in MSDOS.SYS, and then carry out the steps described in the editorial to prevent the the DOS 7 boot process from auto-loading WIN.COM from the Windows 4.0 shell, allowing you to choose which Windows to run after DOS boot-up. Various combinations are possible.
Experiment!)




Editorial from the November 1995 issue

Further Fun with Win95

by Rick Moen

Over the weeks I've played around with Microsoft's "completely new, 32-bit environment", I've kept on getting the recurring suspicion that this is still our old friend Windows 3.x, with a new suit, a spiffy shoeshine, and a few new VxDs. So, I figured it was time to pay some attention to the man behind the curtain.

As Yves Barbero and others have pointed out, a lot of obscure options are tucked away in MSDOS.SYS, which is now an editable text file. (See table, below.) Yves is one of many to point out an undocumented option to launch either Win95 or your old DOS/Windows setup at boot time. His write-up got me started disassembling the Win95 boot process, and inventing a different startup process that suits me better.

First, Win95 is really the two familiar systems from Win3.x days, jammed together: MS-DOS 7.0, and a Windows 4.0 shell that starts from and partially replaces it. Sundry pieces of window dressing (if you'll pardon the expression) are used to make it appear seamless, and it's instructive to strip away a few.

DOS 7 actually starts up exactly the way DOS 5.x/6.x did, except that its COMMAND.COM is custom hard-wired to run WIN.COM when it finishes its AUTOEXEC.BAT, unless there's a WIN.BAT present. (Try creating an empty WIN.BAT, and you'll see.) Alternatively, you can block that WIN.COM autostart by changing a line in MSDOS.SYS (after turning off its system and hidden file attributes, so you can edit it):

[Options]
BootGUI=1

Change that 1 (on) to 0 (off), and you end up at a DOS 7 prompt, and can do whatever you want, including running your old Windows 3.x setup on top of DOS 7, which works fine. While you're in MSDOS.SYS, try adding another line under [Options], saying "Logo=0", which saves time by stopping Win95 from loading the "clouds" display at start-up.

Just as with Windows 3.x, Windows 4.0 not only starts from DOS, but stops there, as well, even when you use the "shutdown" function to shut down/restart your computer or "restart the computer in MS-DOS mode". It just hides both processes behind bitmaps, so you can't see what's going on. Again, as with the "clouds" display, to save loading time and to help you better keep control of how your machine works, you can strip away the fig leaves, by renaming the bitmaps so that Win95 skips them. They're both in the Win95 base directory: logow.sys (the "wait" screen) and logos.sys (the "shutdown" screen). I simply renamed them to
logowOLD.sys and logosOLD.sys, for safekeeping.

The point of all this is that now your Windows 4.0 setup will start more quickly without this chrome & tailfin stuff, and you can now choose to run from DOS 7 whatever you like. It also helps get back to that old computer hobbyist's goal, Knowing What's Going On. More about that, later.

Probably most of you who've already taken the Win95 plunge will have chosen Microsoft's default installation, which basically wipes out Windows 3.x (and much of DOS) by installing over it. Therefore, you're probably scratching your heads and saying "This lets me run what old Windows 3.x setup on DOS 7?" The only other choice Win95's installer mentions is to write it to a different directory, leaving Windows 3.x intact, but at the cost of not migrating your existing Windows applications and groups, a prohibitive penalty for most. There is a way around the problem, and I'll describe it elsewhere ("Having Your Cake and Eating It, Too — Revised"). As usual, this is nowhere in Microsoft's documentation.

All this can be glued together with a tiny bit of batch file magic (taken in part from a helpful example by Rich Graves on USENET). You'll note that an environment variable called "lose" is used to store which version of Windows (if any) you want to start: [1]

AUTOEXEC.BAT:
@echo off
set path=C:\bat;C:\ut;C:\dos;C:\qemm
set temp=C:\tmp
if exist C:\tmp\*.?mp del C:\tmp\*.?mp
C:\win95\command\doskey.com
mode con codepage prepare=((850)
C:\windows\command\ega.cpi)
mode con codepage select=850
C:\bat\pick-os.bat

PICK-OS.BAT:
@echo off
set lose=NOT
choice /c:340 /t:4,4 Which Windows (3 or 4), or 0 for DOS:
if errorlevel 3 goto DOS7
if errorlevel 2 goto WIN4
if errorlevel 1 goto WIN3

:WIN4
set lose=C:\win95
set path=%lose%;%lose%\command;%path%
if exist %lose%\logow.sys del %lose%\logow.sys
if exist %lose%\logos.sys del %lose%\logos.sys
rem We check at each startup because Win95 Setup
rem will silently replace them, otherwise.
rem Start Windows 4
%lose%\win.com
cd \
goto END

:WIN3
set lose=C:\windows
set path=%lose%;%path%
rem My network drivers: Spry TCP/IP & WfW 3.11.
%lose%\net start
%lose%\umb
%lose%\tcptsr
%lose%\tinyrfc
%lose%\nmtsr.exe
%lose%\emsbfr.exe
%lose%\dnr.exe
%lose%\sockets.exe

:DOS7
rem Driver for my "F:" CD-ROM drive.
C:\scsi\mscdex.exe /d:aspicd0 /m:12 /l:F
C:\dos\smartdrv.exe /x

rem Start Windows 3, unless intending to run DOS 7 only.
if lose==NOT goto END
%lose%\win :
cd \

:END
set lose=

This is a little rough, but it works. The reason for a separate "pick-os.bat" is that Win95 comments out lines it doesn't like in AUTOEXEC.BAT (without asking you). This way, it won't overrule you, even if you reinstall Win95.

Bear in mind that, if you don't load the Windows 4.0 shell, and stop at DOS 7 or launch Windows 3.x, you won't have any of the network or CD-ROM drivers that Windows 4.0 likes to load as VxDs (virtual device drivers) after it starts. So, you'll still need to load the DOS-level drivers you used before installing Win95 (as I do, above), if you want to have access to those facilities.

Microsoft's "clarification" literature on its Web page, by the way, claims that "virtually all of the things that took up conventional memory under Windows 3.1 (network, CD-ROM drivers, sound drivers, etc.) are now implemented as 32-bit protect mode components in Windows 95. So, there is even less of a chance that real mode memory will become an issue." They're referring to VxDs that have such privileged access to the "System Virtual Machine" area where critical Win95 code runs that any one of them can bring down Win95 when/if it malfunctions. However, of more immediate importance is that if you "restart the computer in MS-DOS mode" from the Start menu, as Microsoft specifies to run problematic programs such as many graphical games, VxDs such as your CD-ROM support won't be available — all the more reason to keep good alternative DOS/Windows boot setups in working order.

Symantec Rides Again

Many veteran Windows 3.x users tried Microsoft's Program Manager/File Manager user interface, and found it wanting. (That's part of the reason for the very different user interface in Win95.) A very large percentage of Windows users therefore adopted alternative Windows shells, such as Norton Desktop and PC Tools for Windows. (I've used both, starting with the very first release of Norton Desktop, but now prefer IBM's freeware Workplace Shell for Windows, v. 1.51, which can be downloaded from my BBS.) [2]

History has repeated itself, as Symantec (which now owns both the Norton and PC Tools product lines) has released Norton Navigator for Win95, which extends rather than replaces the Microsoft user interface, and adds quite a lot of Norton Utilities-style maintenance functions. Based on Symantec's demonstration at the October meeting, I think they have a winner. The user's environment, after Symantec revamps it, seems much more full-featured, and even somewhat more internally consistent. Well done! (Of course, you'd better have the RAM for it, if experience is any guide, and 8Mb is barely sufficient with Win95 as it comes out of the box.)

More on the File System

I had a nagging suspicion that what I said about long filenames, last month, wasn't quite right, and it wasn't. You may recall that, after consulting the less-than-helpful Microsoft documentation on how long filenames work, I did some digging on my own, and found hidden directories where "link" files were kept that seemed to track the long filenames, pairing them with short, DOS-style ones.

That would make sense, but that's actually the mechanism Win95 uses to track recently used document files, making them recallable from the system's Start menu. I mention this to illustrate a broader point about understanding technology, which I'll get to in a minute.

How do you find out how long filenames work? Simple: Create one, and then check to see what happened. Poke at it with a stick, and see what jumps. I made Win95 copy my AUTOEXEC.BAT within my C:\ directory, as "Win95-copy-of-autoexec.bat-file" (which thereby gets a short filename of "WIN95-~1.BAT"). Then, I looked around for files with new date stamps.

Now, it turned out that more than one thing jumped, and I had noticed only what had jumped highest — the entry for Win95's "recent documents" list. I may have come to the wrong conclusion, but I was on the right track, and going at the problem the way people do who want to understand how things work. After our press deadline, I figured the rest of it out.

For the record, the truth about Win95 long filenames is way, way stranger. After ruling out those aforementioned "recent documents" link files, I was back to searching for other related files by their date stamps. None qualified. So, I pulled out my handy-dandy old Norton Utilities, and snooped around in the directory where the new file had been created. What I found were phantom entries in the directory table, each with bits and pieces of the long filename, bearing file attributes of read-only, system, hidden, and volume label. I saw filename entries like "- A u t o", "W i n 9 5", and "c o p y", with non-display characters at their fronts. No, can't be, I thought.

I blinked, rubbed my eyes, and they were still there. Is someone putting LSD in my coffee, or is this as lame as it appears? (I pondered such thoughts.) Strange to report, the truth is that the extra parts of my test file's name were being stored in some eight or nine extra, phantom entries in the drive's file directories. Behold: the famous new "VFAT" disk format, in the flesh — regular FAT, with a thundering herd of hidden crypto-entries kludged onto its directory structure.

Now, the archaic DOS FAT file system, which Win95 still uses, is just a slightly improved version of the CP/M operating system's way of storing files on floppy disks, and was (barely) adequate for smaller DOS hard drives, in the absence of something better. Among its several weaknesses in the context of the 1990s are its vulnerability to structural damage (especially with delayed-write caching, which Win95 uses extensively), wastage of large amounts of space on drives over 100Mb or so, generally poor access speed, and rapid fragmentation.

Among the things that get fragmented are subdirectories themselves, especially if the number of files entries in a directory ever exceeds 512 [3], which adds a second segment to the directory record. This particular problem is multiplied by a factor of eight or nine by this weird Win95 method of storing long names (not to mention the correspondingly increased file system overhead). This and other long-standing, nagging deficiencies of DOS/Windows's FAT disk format are thus made substantially worse by this — a horrific design compromise. No wonder Win95 chews up RAM, and gets so deeply into swap space! I'm amazed. Truly.

User Groups, and How People Think

That leads me back to my earlier point: Some people try to understand how things work, and others don't, and I think this is fundamental to the question of where computer user groups like the SFpcUG are going.

I'm one of the former type. I've been poking at computers with figurative sticks to see what would jump, since long before the PC — going back to punched cards, through Teletype terminals, and through the fabled Homebrew Computer Club, the advent of the Macintoy, and sundry PC operating systems. Through it all, I've always taken it for granted that computer hobbyists were stick-pokers — like me, not always poking fruitfully or intelligently, but always poking.

Increasingly, it's not so. I see more and more computer users who have no interest in understanding how their systems work, and whose minds just fundamentally don't seem to work that way. In saying this, I don't just mean that people know applications more, and system software/hardware less. I mean that they're losing the ability to think in terms of process, and consequently are losing the ability to solve problems.

Let me give you an example: I heard a protracted discussion of whether a user could change the password for a SLIP login (that is, dial-up Internet access) via Eudora, an Internet e-mail program. An authority figure was quoted on the subject, and the interpretation of his answer was then discussed. All the while, Eudora and a SLIP dialer were available on an idle machine, six feet away. Can a password be changed, that way? It would have taken twenty seconds to try, and find out for certain!

Another user sent me e-mail asking whether, after I'd told him that a particular e-mail address had ceased to exist, new mail sent there would be returned to sender. Far less effort would have been required to simply send a test message, with quicker and more definitive results, but the option of testing and observing process just didn't occur to him.

Moen's Law of Bicycles

In the mid-1970s, bicycles suddenly became very popular in the USA. Massive numbers of people were suddenly in the market, few of them knowing anything about bicycles, and many could distinguish poorly if at all between good equipment and bad; good customer service and bad. Consequently, poorly made bicycles (which cost less to make) undercut well made ones (and poor customer service out-earned the good variety), because their superior value ceased to be perceived. Over time, the overall quality of available bicycles declined considerably, almost entirely because of this dynamic with customers, recovering only after the fad ended, years later.

Moen's Law holds that "Good customers make for good products." Quality thrives only when people can tell the difference. When they haven't a clue about the products and how they work, schlock merchandise prevails.

Ten years ago, I was a member of Diablo Valley PC Users Group, and ran its software library. Nearly every member understood the basics of DOS tree-structured directories, knew how batch files and search paths work, and could isolate simple hardware problems. They knew how to poke, to watch what jumped, and to learn from it. None of this knowledge, which is still key to understanding and maintaining our systems, is nearly as common, today, nor is the desire to understand process. In a real sense, we've gone backwards.

Ten or even five years ago, PC user groups would have helped lead the way in laughing off the market such horrendous kludges as using eight or nine phantom FAT entries to store a long file name. That, for example, was how the software industry was compelled, against its will, to remove copy-protection from business software: Users, led by user groups, demanded its removal.

These days, we're increasingly faced with "ease of use" gained at the expense of functionality and stability, programs that have been made bloated and cluttered to match competitors' feature checklists without regard to usability, and misbegotten technology such as VFAT and "Disk Manager"-type proprietary formatting of hard drives, all because so many users are failing to perceive and assert their own self-interest, and refusing to adopt the stick-poking mindset that lets them pursue it effectively.

These days, it puzzles many users even to hear the common-sense advice that they should keep master program diskettes locked (write-protected) at all times. "But, the manufacturer [an authority figure] told me to unlock it during installation!" About twenty seconds of contemplation would reveal why it isn't in the user's interest to let one's safety copy of installable commercial software modify itself (viruses, accidents, etc.) — but the user must first be willing to think on his own behalf.

Technoids Unite

Many of my articles have been aimed at people who prefer to understand (to some degree) their machines and software, who wish to be in charge and Know What's Going On — stick-pokers. They will continue to be, even if most people really don't want to know, as seems to be increasingly the case.

That doesn't require deep technical knowledge, just an aptitude to investigate, experiment, and confirm supposed facts. This is not just your right (and the birthright of all user groups), but also something actively beneficial to computerdom in general.

"How does this work?" is a good place to start. Moving on from there to the logical next question, "Is this even acceptable in the first place?", strikes me as being even better. In the end, if you don't look out for your own interest, who will?

— RM


[1] I revised the batch file on 25 March 96, to remove some minor errors, and polish up its logic a bit.

[2] I've closed my BBS since writing this piece, but the software mentioned can still be retrieved from the club ftp site, ftp.sfpcug.org.

[3] In retrospect, this article should have mentioned that this number is (I believe) in some way relative to the volume's cluster size. However, it's still a problem, no matter whether the maximum number of entries per directory segment is 512 or 1024.




Table sidebar to accompany the November 1995 editorial

Options inside Win95's MSDOS.SYS

All these items go in the [Options] section of MSDOS.SYS, which in Win95 is an ASCII text file. Value 0 turns most options off, and 1 turns them on.

OPTION EXPLANATION
BootDelay Period allowed for boot keys (2 sec. default).
BootFailSafe Enables access to Safe made on Startup menu.
BootGUI =0 starts MS-DOS 7.0, only.
BootKeys Enables boot control keys, e.g. F4 & F8.
BootMenu Enables Startup menu to select boot.
BootMenuDefault Startup menu delay, in seconds.
BootMulti Enables dual-booting (e.g., DOS 6.x/Win95).
BootWarn Enables warning message in Safe mode.
BootWin =0 starts your old DOS startup files.
DblSpace Enables DoubleSpace compression.
DoubleBuffer Enables double-buffering of SCSI drives.
DrvSpace Enables DriveSpace compression.
LoadTop =0 forces drivers to load to bottom of real RAM.
Logo Enables startup bitmap.
Network Enables Win95 network drivers.

- end -


Copyright (C) 1995 by Rick Moen. All rights reserved. Permission for reproduction in whole or in part is granted to computer user groups for non-profit use.