Let there be Doom
Duplicating Windows 95 diskettes
Multiple boot utility
Leap of faith for the millennium
Welcome to the 32-bit challenge
Maybe it's your partition size
Maybe it's the Junkie virus
What about 32-bit file and disk access and SmartDrive?
Maybe it's your hardware
Run silent, run slower
If it's a problem, get rid of it
Windows 95 shortcut key precedence
Windows 95 installation problems
Q How do I get DOOM running (or any other network DOS game) on a Windows for Workgroups 3.11 network? The problem is that I can't figure out how to load and run the WFW3.11 network drivers in DOS without starting Windows. If the games are run in a DOS window in Windows mode (running IPX protocols), they recognise the network and start up, but then crash.
If I try to start them straight from DOS, the games say that no IPX drivers are detected. I only seem to be able to share drives, files and printers in DOS using the NET command only. What am I doing wrong?
Also, what causes the FDISK command in MS-DOS 6.22 to return an Integer divide by zero error and abort on certain drives?
- Angelo Eliades
A Angelo, one of the fascinating aspects of computer games is that they raise more technical questions than any other software. They demand so much from a machine. The obsessive need to run the mega-violent game provides the motivation, and the result is technological progress and a new breed of hardware and software wizards. It's like a PC arms race.
Doom requires NetWare's IPX protocol. While Windows 3.11 supports IPX protocol, there are resource conflicts when you try to run Doom and Windows at the same time, because both are greedy (and who is to say which is the most deserving?).
If you use Ethernet cards in your network, you can exit Windows and load the IPX drivers manually in DOS. Then you can run Doom from DOS with network. The drivers you need are IPX.COM or IPXODI.COM. If you have IPXODI.COM you also should have LSL.COM and the card driver, such as NE2000.COM.
You load the drivers in the following order: LSL, NE2000, then IPXODI. The IRQ and base address of your card are in the file called NET.CFG, which you can edit in a text editor.
These are the NetWare drivers for DOS. They don't come with Windows for Workgroups, but if you have a Novell network you should have them installed.
The Integer Divide by Zero error associated with using MS-DOS DoubleSpace can be caused by corrupted DoubleSpace files or incompatible terminate-and-stay-resident (TSR) programs. If you have access to CompuServe or the World Wide Web, you can get more details from a Microsoft Knowledge Base article called DoubleSpace Error: R6003, Integer Divide by Zero, ID: Q98760
Thanks to Raden on the CompuServe Action Games forum, and thanks also to R. Seetharaman on the CompuServe MS-DOS forum.
Q How can I make backup copies of the diskettes from my Windows 95 upgrade package. I have tried the DISKCOPY command with which one usually creates backups. But these diskettes have a capacity greater than 1.44Mb. Do you have any suggestions/solutions? They would be much appreciated.
- Anthony Chater
A Anthony, you're out of luck. The idea seems to be that you don't back up these diskettes. They use a special DMF format holding 1.67Mb or so. You can't reformat them from Windows 95 either, although you can from a Windows 95 DOS window. They do other spooky things like record your registration name and company even on diskettes that have the write-protect tab set. I believe this is an anti-piracy measure, although of course no-one's suggesting you have a parrot on your shoulder.
Q After digesting the numerous tips from your column over the past PC World issues, I am hoping there is a utility or a software product that is capable of booting to multiple operating systems. My problem is that I wish to boot to DOS, Windows NT, Windows 3.51, OS/2, Unix and Windows 95 from one PC. Currently I am running the dual-boot capabilities of Windows NT and Windows 3.1, but cannot find a solution for adding the other operating systems. Is there a possibility of achieving this on one PC? If so, your advice would be greatly appreciated.
- Uri George Malaniak
A Sadly Uri, I fear that operating systems are like religion. You have to make a choice. Once you've made your decision, you're free to become a bigot and flame advocates of other operating systems. You didn't mention the Mac OS, by the way, which indicates that you already suffer from some degree of prejudice, probably induced by working with an Intel-based platform.
You won't find the utility you describe. Most Intel-based machines cannot easily tolerate the burden and complexity of two operating systems, let alone six. You can create dual-boot systems with Windows NT and DOS/Windows 3.1, or with Windows 95 and DOS/Windows 3.1, using operating system features. OS/2 lets you run DOS and Windows at the same time. You can dual-boot Unix and DOS/Windows. Linux (freeware Unix) comes with such a utility, called LILO, and there's another Unix utility called System Commander.
What interests me is why you want to do this. If you need to use all those operating systems simultaneously, you can install them on separate machines and network them together. There's no practical system you could create with all those operating systems taking up gigabytes of space in a single box. Are you just going to let them loose in the machine, like pit bulls, and choose the one that survives the longest?
Q I have been told by a reasonably reliable source that the year 2000 will not be a leap year, so there will be no February 29. Apparently this happens every 100 years.
Firstly, if this is really the case, how come every spreadsheet package I've tried treats this as a valid date, and, secondly, who would know for sure if this is fact or fiction?
Can you possibly throw some light on the subject?
- Carol Aspinall
A Carol, yep, 2000 is a leap year, according to no less an authority than the people who invented time itself, the Royal Greenwich Observatory. They have a World Wide Web page full of fascinating stuff (see right), and here's what they have to say about it:
The Year 2000 AD
The year 2000 AD will be a notable one. Many people are asking the questions, "Will 2000 be a leap year?" and "Will it be the start of the new millennium?"
Leap years
Leap years were introduced into the calendar by Julius Caesar. They are necessary as the length of the year is not an integral number of days. The Julian calendar uses the fact that the length of the year is close to 365 and a quarter days. So a basic year with 365 days with an additional extra day every fourth year will give a good approximation.
This calendar was used until the 16th century when the small discrepancy between the approximate length of the year (365.25 days) and the true length (365.24219 days) added up to several days. Pope Gregory realised that this meant that the date of Easter would eventually not fall in the spring, but would become closer and closer to December 25, Christmas.
In 1582 the Gregorian calendar was instituted. It changed the rule for determining whether a year should be a leap year by stating that century years should only be leap years if they were divisible by 400. The effect of this is to make the adopted average year-length (365.2425 days) an approximation that will only amount to one day's error after 4000 years.
Britain adopted the Gregorian calendar in 1752 when September 2 was followed by September 14. We still use the Gregorian calendar, and so the year 2000, which is divisible by 400, will be a leap year.
Millennia
A millennium is a period of 1,000 years. The question of which year is the first year of the millennium hinges on the date of the first year AD. Unfortunately the sequence of years going from BC to AD does not include a Year 0.
The sequence of years runs 3 BC, 2 BC, 1 BC, 1 AD, 2 AD, 3 AD, etc. This means that the first year of the first millennium was 1 AD. The one thousandth year was 1000 AD and the first day of the second millennium was 1001 AD.
It is thus clear that the start of the new millennium will be January 1, 2001.
Celebrations
The year 2000 AD will certainly be celebrated, as is natural for a year with such a round number, but, accurately speaking, we will be celebrating the 2000th year or the last year of the millennium, not the start of the new millennium. Whether this will be an excuse for more celebrations in the following year will have to be seen!
Produced by the Information Services Department of the Royal Greenwich Observatory.
Editors note: We've received a massive amount of correspondence on this issue, which suggests that people are very interested and the issue is very confusing. Everyone has a little light to throw on the 32-bit question, and a different perspective.
Joe Seychell of Queensland called to say that problems with 32-bit disk and file access in Windows 3.1 can be due to disk partition size. According to Joe, DOS can't handle the larger partitions.
The first step in fixing the problem is to partition your disk into partitions less than 200Mb in size. That may mean backing up all your data and reinstalling your operating system and applications. If you already have a disk partition less than 200Mb in size, you can simply move the swapfile to it.
The next step is to open Control Panel and launch the 386 Enhanced applet. Click Virtual Memory and in the Virtual Memory dialogue click the Change button. Uncheck the 32-bit disk and file access check boxes.
Exit Windows and reboot the machine. Then go back into the 386 enhanced Virtual Memory change dialogue. Recreate the swapfile in the small partition, and then re-enable 32-bit file access and disk access.
In your September issue of Hardware Q&A you printed a letter from Shaughan Syme, Manly Vale, NSW, who couldn't get his computer to run 32-bit disk access in Windows. At school we have had the same problem. We found the problem was a virus, specifically called Junkie. After running a recently-written virus checker and removing the virus, the problem was solved.
- Michael Maiolo
I eagerly await the solution to 32-bit disk access. I'm sure this is a leading topic for many large IDE drive users. Probably also for many who haven't discovered it.
Meanwhile, under the same banner, can you please clarify a few aspects of SmartDrive which have me, and others confused.
- J T Williams
Editors note: We've listed J T's questions followed by the answers, for clarity.
With 32-bit file access on, do I need SmartDrive?
No. When 32-bit file access is enabled, the combination of VFAT and VCACHE replaces the functionality offered by SmartDrive by providing 32-bit protected-mode cache functionality. You need SmartDrive only for CD-ROM and floppy drive-caching. You also need SmartDrive if you are using it for double buffering.
Does the 2048K buffer then become free as available XMS or EMS?
Yes, but VCACHE will use cache memory in this case. VCACHE is a dynamic cache and will only reserve as much room as it needs, up to the maximum defined in the Control Panel, 386 Enhanced dialogue. SmartDrive caching will be automatically disabled for drives mounted by VFAT. However 32-bit File Access will not reclaim the memory used by SmartDrive for its cache.
However, while running in Windows for Workgroups, VFAT reduces the size of the SmartDrive cache to 128K and frees up additional memory, which is then available as extended memory.
Is SmartDrive a benefit only in DOS?
If you do not run Windows, you should run SMARTDRV. Because DOS applications are mostly not as memory intensive as Windows ones, this should be no problem. I recommend that you set up a multi-configuration for DOS with SMARTDRV loaded or skipped. An easier way is to insert a ? after LOADHIGH (LH) in the SMARTDRV command so that you are prompted for choosing if SmartDrive should be loaded each time your PC boots.
Is SmartDrive essential for CD-ROM, even with 32-bit file access?
It is not essential, but VCACHE does not cache CD-ROMs and floppy drives. To cache CD-ROM you should set up SmartDrive to specify a normal cache for DOS, and a small cache for Windows (for example, with the parameter 2048 256).
What is the suggested command line to load SmartDrive high?
See above and use the LH command (LH=C:\DOS\SMARTDRV). You may try with different amounts for the cache size (128, 512 in Windows) to find a good setting.
What size should cache size be set to?
It is recommended to set it to half of the RAM size. Because this is only the maximum VCACHE will use (see above) and there is no good reason for a big SMARTDRV cache in Windows when using VCACHE, you can set this size even if you use SMARTDRV with a small cache for the CD-ROM.
Q At home I have a 486DX2-50 machine with 8Mb of RAM. At work I have a 486DX2-66. Recently while playing around with the 386 Enhanced dialogue in the Windows Control Panel, I went into the Virtual Memory dialogue box and clicked the Change button. On my machine at work a line appears saying Use 32-bit access. This line does not appear on my home machine. I am told by local computer buffs that if this line does not appear, not only do you not have 32-bit access, but you cannot get it without making expensive hardware changes. Is this correct? What is 32-bit disk access anyway?
- Denis Mason
A There's a very comprehensive document available that answers this kind of question at length. It's called WW0530, Title SmartDrive and 32-bit disk access, available on the on-line Microsoft Knowledge Base. It's very difficult to answer the question briefly, because there are so many concepts and qualifications involved; here's a short, vague answer that may provide a tiny bit of help.
When applications want to talk to a disk, they first ask MS-DOS to get the info. In the older, 16-bit access approach, MS-DOS then made a request to the BIOS, the BIOS asked the hard disk controller, and the hard disk controller asked the hard disk.
The 32-bit disk access approach bypasses the BIOS step, effectively replacing the BIOS by trapping any calls to it. This better disk access provides many improvements, particularly when working under Windows. From the user's point of view, the main benefits are speed, and the ability to run more MS-DOS applications from Windows without running out of resources.
There's a standard type of hard disk controller, the Western Digital 1003 or ST 506 hard disk controller. This is very common, covering about 90 per cent of what's around, according to Microsoft, and it's the only one Windows supports. Windows 3.11 comes with:
• WDCTRL, the 32-bit disk access device that talks to standard Western Digital 1003 or ST506 hard disk controllers. WDCTRL is only installed if Setup detects a compatible hard disk controller.
• BlockDev, which coordinates calling block I/O services between devices and the 32-bit disk access devices that provide those services for specific hard disk controllers. BlockDev is always installed.
• PageFile, which handles the virtual memory paging file and calls through BlockDev if any 32-bit disk access devices are available. PageFile is always installed.
• INT13, which traps and emulates INT13H BIOS calls by calling BlockDev. INT13 is only installed if at least one 32-bit disk access device is present.
Windows Setup automatically detects Western Digital standard controllers and adds the following lines to the [386Enh] section of your SYSTEM.INI file:
device=*int13
device=*wdctrl
The 32-bit disk access devices are contained within the file WIN386.EXE. When you want to disable 32-bit access, you just do it from the Control Panel 386 Enhanced dialogue box, as explained above, or you comment out the lines above from the SYSTEM.INI file.
So to sum up, 32-bit disk and file access are a good idea, but about 10 per cent of disk controllers won't work with it. When you run Windows Setup, it should detect whether or not your disk will work, and offer the options for 32-bit disk and file access in the Control Panel 386 Enhanced dialogue.
Q Before I start, I would like to commend you on your magazine and particularly this section, the Help Screen, as it has been of great use to me over the past year. It is now almost the sole reason I buy the magazine. I know everybody else says what a great magazine it is, but it's nice to be able to buy such a quality Australian computer magazine over all the British and American ones, and I would like to take this opportunity to thank you. Keep up the good work. I'm also very sorry to hear that Jan is leaving, and I will miss his great amount of information and subtle humour generally.
I may have the solution to Shaughan Syme's 32-bit challenge involving disk access. My parents bought a new Pentium 100 with an 850Mb Maxtor hard disk.
As I was exploring Windows, I noticed that the 32-bit disk access was not checked, and thinking that the computer supplier had overlooked this, I checked it. When I rebooted, Windows displayed the same error message as Shaughan saw. After some examination of the motherboard manual and the BIOS, I still could not understand why 32-bit disk access would not work.
Some talking to the computer supplier confirmed that the BIOS runs the hard disk at 32-bit disk access speed continuously, and the hard drive was not designed to have the check box marked in Windows.
Since it was already running at 32-bit, it was creating a conflict with WDCTRL, which is why it failed to start in 32-bit mode. Even when Windows says that it is running in 16-bit mode, it is actually running at 32-bit disk access speed or faster.
- Craig McDonald
A Craig, thanks for your kind sentiments. At least you didn't threaten to cancel your subscription because Jan was leaving, which another writer did. I'll try to supply the info and gags in as steady a stream as did Jan. If you don't find yourself laughing enough, maybe my humour is even more subtle than Jan's - let me know and I'll work on it.
Everybody has a different story on this 32-bit stuff, don't they? How are the punters ever supposed to get it straight? Your story seems to indicate that your hard disk controller does not follow the Western Digital standard that Windows 3.1 supports. It may be running a 32-bit BIOS of its own, but my impression is that it's not taking advantage of all the improvements offered by the Windows 32-bit disk access, particularly its ability to shorten the chain of command in disk access and to avoid switching the processor constantly between real and protected mode.
I shrink from suggesting that everybody just roll over and accept Microsoft as the universal setter of global standards.
However, when you're running a Microsoft operating system, you make life easier if you get hardware that fits into the fairly extensive list for which Microsoft supplies drivers. This applies not only to hard drives, but also to graphics cards, modems and, with the advent of the Plug and Play standard, to any hardware expansion cards.
Jan is going, but I'm pleased that the Help Screen is continuing, in my opinion the best part of the magazine.
In reference to Neil Clark's problem in the September issue, I had similar problems which were cured by removing 32-bit file access. The problems only occurred when I used Word 6 for Windows in a session. They did not occur with any other application such as Access or Quattro Pro. Microsoft would not believe it.
- David Barnett
Q My problem - more of an annoyance - is with Windows 95. Shortcut keys I used in Windows 3.11 to open applications also work in Windows 95, but unfortunately they now take precedence over the shortcut keys in an opened application, such as Word 6 for Windows.
I don't know how to get rid of them, short of re-installing Windows 95. Trying to replace them with different shortcut keys doesn't work. Both shortcut keys then act!
- David Barnett
A David, the shortcut key precedence thing is a peculiar aspect of Windows 95. Any programmer, of whom there are few at Microsoft, will tell you that it's much better to be able to define an entity locally than to be forced to define it globally. Yet Microsoft has made the Windows 95 shortcut keys global, taking precedence over the locally-defined shortcut keys within applications. It's just plain wrong.
You might be able to fix your shortcut key problem by opening the Property sheet of the shortcuts that point to your application. Open the Start Menu as a folder, and locate and select the application's shortcut, press <Alt>+<Enter> to open the Shortcut Properties dialogue, then select the Shortcut tab and edit the Shortcut key field. Just enter space in the shortcut key field to set it to None.
I don't know if there are any shortcut keys secretly defined elsewhere.
Q Each time I installed Windows 95, the PC speed changed. I don't mean the speed of the CPU, but the time to load and access files. The first time I installed Windows, I went to the My Computer Properties. In the Performance tab it showed:
Compatibility mode paging reduces overall system performance.
Drive C: using MS-DOS compatibility mode file system
Drive D: using MS-DOS compatibility mode file system
The second time I installed Windows 95 it didn't show any of them, and everything was running with 32-bit access. The last time I installed Windows 95 all those things came back again. My computer was really slow when I had those messages.
I hope that you can help to get rid of them. In performance status it shows that I only have 6Mb of RAM, but I know that I have 8Mb. Why?
- Paul Chang
A Paul, the MS-DOS compatibility mode is caused by real-mode, 16 bit drivers, which are being loaded by your config.sys, autoexec.bat or some initialisation file which may be left over from your previous 16-bit Windows installation. The ios.log file in the Windows directory should have information about which drivers are forcing you to run MS-DOS compatibility mode. You will also want to check Device Manager for any resource conflicts between your hardware. If you post us the contents of ios.log, we may be able to offer some more advice.
Neale Morison
Thanks to Rob Greenwell of Microsoft on the CompuServe Windows 95 Setup forum.