DOS Days

Octek 286 Motherboard Review - Part 2

In part 1, we took a high-level look at this old Octek DCS-286 motherboard and got it powered up. Let's now look around the BIOS to see what options this interesting board offers:

When you first hit F1 on startup, you are presented with this prompt:

If you hit 'N' for No, the system will restart and attempt to boot as normal. If you choose 'Y' you are then offered a second set of choices:

So hitting '1' enters the basic setup, whilst '2' enters the extended setup.

Basic Setup holds similar settings to the first page on a more modern BIOS screen - you are prompted line-by-line to input the following:

Once you've chosen the "Fixed disk drive D type", the remaining rows are displayed automatically, based on what the BIOS detected during its POST. The system restarts when you hit 'Y', or will start the prompts again if you hit 'N'.

If you choose Extended Setup, you are presented with this:

Each of these first 3 choices shows an initial warning screen:

then the screen you chose:


Easy NEAT Chipset Register Setup


Advanced NEAT Chipset Register Setup

This is where it can get confusing. If you're unsure, don't mess with any settings in here. However, if you're feeling adventurous, it's really not that difficult - you just need some help from the chipset's Datasheet. Starting from page 29 it outlines the configuration registers for the 3 chips in the chipset: 82C211, 82C212 and 82C206.

For the 82C211 chip, there are 3 bytes of configuration registers. The datasheet calls them RA0, RA1 and RA2 and in table 1.3 you can see the index for each of these which are 60H, 61H and 62H. Note that an 'R' in one of the bit positions means 'RESERVED', so you cannot change it. So 60H is our PROCCLK (processor clock) selector, and on the next page in the datasheet it describes each bit position and what it does. Bit 4 is the PROCCLK Select where a zero means the processor clock = CLK2IN (a separate clock derived from an external crystal that is 2x the CPU's frequency) and a 1 would change this to use BCLK (the AT bus clock).

Another example is index 61H, the command delay register. On page 30 we can see that bit 6 of this controls 'Quick Mode' - a '1' means it is in quick mode, and a '0' means it is not in quick mode. The four modes of operation for the 82C211 are described in the datasheet starting from page 25.


Enable/Disable Video and Main BIOS Shadow

As I mentioned in part 1, the above screens are almost identical to the C&T 386 chipset setup.
The Advanced NEAT Chipset Register Setup screen refers to 3 ICs:

  • P82C206 - Integrated Peripherals Controller (IPC)
  • P82C211 - CPU/Bus controller
  • P82C212 - Page/Interleave and EMS Memory controller

These make up three of the five ICs found in the Chips & Technologies CS8221 NEAT chipset. So it looks like G2 took C&T's CS8221 chipset and integrated it further into two chips (this board has three if you count the fact we have two GC102 chips - one that acts as the address buffer and a second that acts as the data buffer). The GC101 takes the role of the 82C206, 82C211 and 82C212, and the GC102 takes the role of the 82C215.

In the table below, I've outlined the various chipset ICs found on this 286 board and tried to clarify how the G2 chipset maps to both the original 286 NEAT chipset (CS8221) and my 386 board which has a later C&T chipset:

  286 NEAT This 286 Board C&T 386 Board
Chipset Manufacturer C&T G2 C&T 386
Chipset Model CS8221 (NEAT) GC101/102 CS8230 (386/AT)
BIOS Manufacturer - AMI AMI
BIOS Date - 25th September 1988 3rd March 1989
Integrated Periperhals Controller P82C206 GC101 (BIOS says P82C206) P82C206
CPU/Bus Controller P82C211 GC101 (BIOS says P82C211) P82C301C
Page/Interleave Memory Controller P82C212 GC101 (BIOS says P82C212) P82C302C
Address / Data / Control Buffers P82C215 GC102 P82A303, P82A304 / P82B305 / P82A306
Supported CPU Clock Speeds - 20 MHz - 12 MHz - 25 MHz

 

Setting Up A "Type 47" Hard Disk

For a hard disk, I want to use a Compact Flash card and a CF-to-IDE adapter. I did this in my 386 motherboard review, and it worked well.

With this 286 however, I've hit a snag. On the Basic Setup screen, I'm prompted to enter the "Fixed disk drive C type". This is a number from 1 to 47, denoting one of the 46 most common hard disk physical configurations, or type 47 if my hard disk doesn't match any of the 46. The CF card I'm using is a SanDisk 128 MB card that has 980 cylinders, 8 heads and 32 sectors. Since all of the type 1-46 hard disks are MFM drives with 17 sectors per track, mine most definitely falls into the 'type 47' (user-defined) category.

Now here's the snag.... when I choose a type of 47 for drive C: there is no follow-up prompt for me to input my "hard disk"'s cylinder count, head count, and sectors per track. Nothing. So there is no way to configure a user-defined hard disk in this BIOS'es firmware. In fact, I learned that choosing 'Type 47' on this old BIOS means that tools like FDISK simply see a CHS configuration of 0,0,0 (zero cylinders, zero heads, and zero sectors per track), which is no good to anyone.

So this limitation means this PC can only operate with hard disks that conform to one of the 46 predefined physical configurations it knows about. In my case, given that my CF card is 128 MB, I'm going to try to fool the PC into thinking it's a type 32 in the AMI BIOS list, which is a 128 MB hard disk consisting of 1024 cylinders, 15 heads, and 17 sectors per track.

So I reboot, go back into Basic Setup and configure Fixed disk drive C type to 32. I also setup the floppy disk A type to be type 3 (1.44 MB 3.5").

I'm going to try editing the MBR (Master Boot Record) using a disk sector editor (physical sector 0 holds the MBR) to alter the 3 bytes that store the Cyls, Heads and Sectors per Track. Look up online how to do this but be warned it is not simple, and I cannot be held liable for any loss or damage you may cause by doing this!

.

I now reboot once more:

 

...and unsurprisingly the BIOS just isn't happy that my hard disk is not a true 'type 32'. I boot to a floppy disk and run FDISK. No luck... FDISK doesn't detect a valid hard disk at all - it just reports 'No fixed disks found'.

OK, so let's take stock of the situation: the BIOS firmware itself won't allow me to set the hard disk CHS values if I set it to 'Type 47', and all software appears to want to read the BIOS to detect what hard disks are installed. Perhaps a software equivalent would work?

I'm aware of a couple of DOS utilities that allow you to edit the BIOS settings and write them to the CMOS, just like the BIOS firmware. One is called CMOSer, and the other BIOS.EXE.

Unfortunately, it seems these utilities still don't allow me to choose the values for a user-defined hard disk, although I could edit the BIOS bytes where these details are stored. Dangerous I think, given the age of this BIOS. These tools were written a few years before the AMI BIOS had a nice colour interface which became so commonplace on our PCs, so hard disk data in this version might be stored in a different location.

Let's move on to another utility. One called HardFake, written by KalaSoft. This tool allows me to overwrite the entries in the HDP (Hard Disk Parameters) table in the BIOS, simply by passing it the number of cylinders, heads and sectors per track (and a few others we don't really need to worry about for IDE drives). Actually, it doesn't overwrite the HDP in the CMOS - it reroutes BIOS calls to an area of memory that holds this information to fool software that's reading the HDP to see different values!

Now I hear you saying "Why do this when upon reboot you're back to square one? The BIOS still holds zero values for your hard disk so it will never self-boot!". Well, my new plan is to get OnTrack Disk Manager to detect a hard disk. ODM is a great tool which can easily setup your hard disk partitions and format them without any other setup involved.

I need to boot from a floppy disk that also installs the OnTrack Dynamic Drive Overlay first. This will allow Ontrack to work if the BIOS call detects a hard disk. I use this floppy disk image.

(if you try to run OnTrack Disk Manager without this overlay you'll get this message)

and hitting Alt-C to continue dumps you back to DOS.

So, following boot from a floppy that also installs the ODM Dynamic Drive Overlay, I run HardFake as follows to store the values of a type 32 hard disk in the HDP table:

hardfake 0 1024 15 -1 0 1024 17

and then immediately re-run OnTrack Disk Manager using DM.exe.

Success! Ontrack Disk Manager has now detected a hard disk*, so I can now instruct it to build the partitions and format the drive to this fake configuration!

*Incidentally, it's possible that after running HardFake, even FDISK will detect my hard disk. I didn't try.

From this point I'm able to follow the Easy Setup, choose the maximum size of the hard disk (128 MB, due to the 1024 cyls, 15 heads, and 17 sectors), and have it formatted as drive C:.

...and finally a reboot to confirm ODM did its thing correctly:

Woohoo! The one slight issue is that whenever the system boots, it still reports "C: drive error Press <F1> to RESUME". Hitting F1 though does allow it to boot. The only final part I will do is reboot from an MS-DOS 6.22 floppy and run SYS C: to change the operating system from Caldera DR-DOS 7.03 to MS-DOS 6.22, which is, in my mind, more "authentic" and period-correct.

There we are. Now I'm all set to install some software on this hard disk and play around with the 286 some more!

Part 3