Ruud's Commodore Site: IBM PC/XT and compatibles Home Email

IBM PCs and compatibles

Some background information

After finishing the HTS, I started to assemble PC-XT clones at Equa Electronics in Simpleveld (NL). The motherboards we used in the beginning were equiped with normal TTL ICs and costed at least $200. So it was quite profitable to repair them. I even built a special card so I could go through all instructions of the computer at start up. This was the predecessor of the 6502 Debugger. A self written BIOS made the repairs even simpler.
But in time boards were more and more equiped with custom SMD ICs that a) were hard to get and b) needed special tools to handle them. But the boards also became cheaper and cheaper so at one moment we decided to stop the board repair service.
Because of all the knowledge I gained during that time, I still have an affection for these old machines. And I still do little projects with these machines.

Subgroups on this page

You won't find any standard information about the items on this page, only information about what I did with them like hacks and other changes. Where possible I will give you a link where to find the standard information.

Commodore PCs

Information by Richard Lagendijk
This PC-1 has only one floppy drive. It has an expansion port and it looks like a standard ISA one, but it isn't. One of the first things I did was creating an expansion with three extra ISA slots.
I partly disassembled the BIOS including comments.

Information by Richard Lagendijk
This PC10 is IMHO the most IBM XT compatible PC: you still can plug in an original IBM PC/XT keyboard. This means I can use the AT2XT keyboard converter. Which on its turn means I don't need a separate keyboard and, in combination with a VGA card, I can use my KVM switch :)
I partly disassembled the BIOS.

PC10-III and PC20-III
Information by Richard Lagendijk about the PC10-III.
Information by Richard Lagendijk about the PC20-III.
These machines are equiped with a Intel 8088 processor. The PC20-III is a PC10-III plus a 20 MB hard disk drive. That drive is connected to an on board IDE-XT interface. The IDE-XT interface is the 8-bits version of the well known IDE, or better, ATA interface used by PCs equiped with the 80286 and faster CPUs. So unfortunately these 16 bits hard drives used by these PCs cannot be used in the PC10/20-III.
I partly disassembled the BIOS.

PC30-III, PC35-III and PC45-III
Information by Richard Lagendijk about the PC30-III.
Information by Richard Lagendijk about the PC35-III.
Information by Richard Lagendijk about the PC45-III.
These PCs are AT clones. The differences are the size of the hard disk drive and whether or not an onboard VGA card.

Commodore 386SX-25
Information by Richard Lagendijk.
I installed Windows for Workgroups 3.11 and Personal Netware on it. WfW enables me to exchange data with my IBM that is equiped with Windows 98SE and Windows XP. Personal Netware enables me to exchange data with all my XT and AT compatibles that have Personal Netware installed as well.

Non-Commodore PCs

IBM ThinkCentre M50 8187-43G
This PC, P3 - 4 GHz, 2 GB RAM, is the working horse of my work room. I have installed Windows 98SE and Windows XP. I use W98 to run Commodore emulators under real DOS and to exchange data with my Commodore 386SX-25 in GUI mode. The XP mode is used to program various things and to exchange data with my Windows 7 laptop and PCs.
To be able to exchange data with my Commodore 386SX-25, I installed a 3COM 3C905B network card. I had to anyway because I wasn't able to find W98 drivers for the on board Intel 1 Gb network card. I disabled it under XP.

The Xi8088 is an XT compatible using nowadays ICs. Use this link for more technical information.
The extra SRAM above the 640 KB barrier enables me to install an UMB drivers, freeing more RAM for applications.
Not mentioned on the site: the Xi8088 supports HD drives. This won't work in combination with a XT floppy disk controller (FDC), you will need an AT one. I have never seen a stand alone AT FDC, they were always combined at least a MFM or IDE hard disk controller. Such a combined card is always 16 bits. But don't let that fool you, the FDC part is only 8 bits. I use an IDE/FDC controller that has two COM ports, a LPT port and a game port on board as well. And although I only have 8 bits at my disposal, I even can use the IDE port, see later.


A BIOS for IBM XT compatibles
As mentioned above I developed my own XT BIOS. Although I write 'my own', I cannot call it my own. Most parts of the BIOS have been copied from existing BIOSes.
To be able to repair broken boards in the past, I needed a BIOS that was able to diagnose a board right after a reset. So I was mainly interested in the startup part. My very first BIOS wasn't even able to boot, it only contained code to test the various onboard ICs. To see the state of the testing procedure I developed an ISA POST card. This card contains two 7-segments displays that output the code sent to I/O port 80h. So if the test got stuck somewhere, I could trace that back in the source code to a certain piece of hardware using the shown code. Later I inserted code to use the screen as well as a source of information.
But it would be more exiting IMHO if my BIOS could boot as well. But having no knowledge of, for example, how to load data from a floppy, I decided to copy this, and other parts, from existing BIOSes.
If interested, you can have the code. The momentary code will assemble with NASM.

XTIDE Universal BIOS
The XTIDE Universal BIOS was originally meant to be used in combination with the XT-IDE board. This board enables a PC-XT (clone) to make use of Compact Flash cards and regular 16-bits IDE hard disk drives as used by 80286, 80386 ... Pentium PCs.
Later the software was enhanced in a such a way that you could connect other hard disk drives to a PC than the ones given in the setup. This enabled me to connect a 20 GB drive to my Commodore 386SX-25. OK, I can only use 8 GB of it but given the fact that 504 MB was the max before, I cannot complain :)
Another advantage of XTIDE Universal BIOS: at boot time it gives you a menu with all available drives and you can choose where to boot from.
The software has to be burned on an (E)EPROM and to be added to the board in one or another way. I myself use the board of an 'ancient' virus checker, ThunderByte, and replaced its EPROM by mine.

Having questions or comment? You want more information?
You can email me here.