Vintage Computers — 15
After configuring the 486 system I created a
dd image snapshot backup.
Oddly, I could not use the loop device to access the image backup. Apparently the mount command believed the file system dirty bit was set. I ran
fsck.msdos and some files allegedly had not been deleted properly. I restored the hard disk into the 486 and ran
scandisk. The tool found no errors. I returned the hard disk to the test box and let
fsck.msdos correct the alleged file system errors. This time after creating the backup image I could mount through the loop device. To be safe I again tested the disk with
Odd the native
scandisk found no errors but in perspective that tool is 30 years old. Probably not surprising, the modern
fsck.msdos seems to be more strict or robust about file system integrity.
I returned to my previous effort to use MS-DOS with a 2 GB
C: partition. This is not critical and mostly an intellectual challenge. Traveling this road required me to remember esoteric information about how hard disk technology evolved.
In a virtual machine I had no problems installing MS-DOS into a 2 GB partition. This is a red herring because the virtual backend is designed to be as compatible and flexible as possible. With a physical machine using a 2 GB partition is not straightforward.
The FAT-16 file system supported partitions up to 2 GB, but often the BIOS limited that support. Commonly on vintage systems the BIOS was limited to 504 MiB (528 MB) partitions. The caveat is MS-DOS will seem satisfied installing to a 2 GB partition — until trying to access the partition beyond that limit. Similarly, running
scandisk or the Norton Disk Doctor will halt with bad block errors at that location in the partition.
The limitation can be bypassed if the BIOS supports logical block addressing (LBA).
This is straightforward to change on the K6-III+ system. No so straightforward with the 486 system. The only possible option with the 486 BIOS is a “type 47” for “user defined.”
While there are several settings, two do not apply to almost all PATA/IDE hard disks —
LZone. That leaves adjusting
Sectors. The installed Maxtor hard disk is a model 83201A6. The disk nameplate data shows 6218 cylinders, 16 heads, and 63 sectors.
The question is whether the BIOS can be changed to accommodate those numbers or will there be data loss?
I grabbed the spare 20 GB PATA disk, prepared a 2 GB partition and copied an image of the existing Maxtor 3.2 GB disk MS-DOS and Windows for Workgroups (WFWG) 3.11 installation.
The 20 GB disk has the following
fdisk -l output:
- Cylinders: 2434
- Heads: 255
- Sectors/Track: 63
- Bytes/Sector: 512
The 486 system refused to boot with those actual hard disk parameters. Experimenting indicated any change in the Heads or Sector numbers resulted in the system halting with a disk failure.
Playing with different cylinder numbers got the system to boot, but
scandisk and the Norton Disk Doctor always halted with bad block errors at the 504 MiB point.
Possibly drive overlay software might help use a 2 GB partition. While WFWG has special drivers to bypass the BIOS to access disks, those drivers do not function with direct disk access in MS-DOS. I resigned myself to accepting that this BIOS was never going to play nice with anything greater than 504 MiB (528 MB) system partitions. That is okay because this computer is only a hobby system.
More to come.