Retro Computing

So I’ve decided to take a break from the radio stuff again and I am going to be building an IBM PC clone system using a modern kit. Sergey’s 8088 boards create a clone of the original PC using some more modern components that are easier to source (there are still a few old things in there). It is not an emulator or some modern FPGA; it is truly an 8088 system.

Micro 8088 (this is the one I will be discussing) :

Xi 8088 (this is the more complex alternative) :

The board is a fair bit better than the original IBM PC in that it uses a chipset like modern computers do. This makes the project a lot simpler to build because there are much less extraneous chips. It uses a Faraday chipset FE2010A which can still be purchased on eBay. The rest of the components can be sourced on mouser or digikey, except the CPU which comes from eBay also. This kit supports the NEC V20 which is an improved version of the 8088 supporting 9.55 MHz CPU speed and a few extra instructions from the 286. The original PC was only 4.77 MHz. The board can also be set to this slower frequency for older programs that did not have a speed sensing feature (and run way too fast on higher speed CPUs).

The system should support older DOS programs, but it’s not powerful enough for games like Doom. It can handle King’s Quest 1-4 pretty well and maybe even 5-6 with some lag, we will see. It should also support QBASIC and VBDOS which is what I am mainly excited about because QBASIC was how I first learned to program. I didn’t even know what programming was when I first loaded it up. I was just messing around on my mom’s computer, but when I realized what it was, I got obsessed and ended up making a few games and a math practice program for my younger brother that was currently learning his times tables. It would be incredibly cool (in a nerdy way) to run my own programs on my own system built from scratch, so this is my goal. It may not be fast enough, however…

There are a couple videos on youtube of people building this kit, but my aim is to get the clock speed as high as possible. I also ordered a PCB for Sergey’s (the designer of the board) other kit, the Xi 8088 which is a much more full featured version of this that allows much more extensive overclocking. The NEC V20HL CPU is the fastest in this class, allowing a clock speed of 16 MHz, which should be enough to run my programs. However, in order to run this CPU at full speed, an adapter called the PC Sprint will have to be used. This board creates a separate clock generation chip for the CPU so that you don’t have to overclock the whole board just to speed up the CPU. This is important because this board and the ISA bus is not designed for much more than 10 MHz.

So when it arrives, I’ll build the Micro 8088 and see how it performs and then I’ll build the Xi 8088 if I am unable to reach 16 MHz. See, the CPU is actually designed for that frequency, it’s just that the board does not support it. Hopefully the adapter will work.

If this goes well, I may purchase some more PCBs from China and offer this as a kit for sale. The problem is that right now, you can only purchase the PCBs on eBay or from OSH Park at an inflated cost and there are no kits available with the parts included. You have to source all the parts and PCBs yourself. So if there is interest (which I doubt LOL), then I will provide these kits given that I am able to make it work.

I may also do a video on this project for TI. Something like, “Extreme overclocking the original PC clone” might get some attention. I think it’s really fun cause you always see people overclocking new hardware, but what about pushing the original PC to its limit?

OK, here are all the relevant links:

https://github.com/skiselev/micro_8088

http://www.malinov.com/Home/sergeys-projects/xi-8088

https://www.ebay.com/usr/fmv.electronics1

https://ctrl-alt-rees.com/2020-03-02-overclocking-the-ibm-5150-8088-cpu-with-pc-sprint.html

So my radio project is still in the works, but I am waiting on my PCBs for the improved version covering 40m band.

I haven’t posted any retro computing stuff yet, so I’d like to talk about my recent experience with AMD K6-2.

I am attempting to build a computer that is right in-between the DOS era and the Pentium III era (this is circa 1999).

So what games should this system be able to play?

Quake 2

Quake 3

Deus Ex

Unreal 1

Maybe half-life?

It runs my game Oasis! Interestingly, the development environment (AGS) will run on there too, so I could actually make period correct games on the system.

After some research on this subject (including the great website – philscomputerlab.com), I concluded that the best motherboard to use for this would be the Gigabyte GA-5AX. I managed to find the Rev. 4.1 of this board on ebay for a reasonable price of $99. This board supports pretty much any Socket 7 and Super Socket 7 processor out there. This includes AMD, Intel, and even Cyrix. The fastest CPUs come from AMD and are the K6-2 and K6-3 series. What makes this combo special is that it can be used as a DOS PC or a much faster Windows PC by overclocking and underclocking. It can be underclocked enough to run older DOS games at the correct speed as well as windows with the overclock. Overall, it is a good balance with its wide range of speeds.

But that’s about all there is that’s good about it. Its AGP support is extremely buggy and it’s nearly impossible to get both OpenGL and DirectX working. You might get one or the other, but I have not been able to get both of them working at the same time yet. Both NVIDIA and ATI are the least compatible cards in this system and they are the only I have tried as of yet. Matrox and 3dfx are two graphics card companies that no longer exist, but apparently they have the best compatibility with this motherboard. I have tried 5 ATI and NVIDIA cards so far and I will soon try a 3dfx voodoo an report the results.

The cards I have tried are:

ATI Rage Pro 128

NVIDIA TNT2 M64

NVIDIA Geforce FX5500

NVIDIA Geforce 4 MX 440

ATI Radeon 7000

These have each been tested with Windows 2000 and four different driver revisions. What usually occurs when testing is the system with either immediately reboot upon entering OpenGL or DirectX or it will display the message “The exception privileged instruction 0xxxxxx”. This got me thinking that the problem has to do with the driver using a newer instruction that hasn’t been implemented in this CPU. I will soon try a Voodoo3 3500 to see if their drivers work. A Matrox G400 is also a good card to try. I will first try replacing the K6-2 with a K6-3+ and see if maybe some newer instructions are implemented in this CPU. It doesn’t seem likely and I can’t find any documentation about instructions, but it is possible.

If anyone is having a similar error with OpenGL, I did find that the SciTech GLDirect drivers DO WORK. They basically emulated OpenGL inside of DirectX. This works, but there is a lot of CPU overhead and so it runs very slowly.

To put this in perspective, I am able to run a Radeon HD 4650 in a Dual CPU Pentium III system (CUV4X-D) with no problems and full DirectX 9.0c and OpenGL support. This graphics card was released on Sep 10th, 2008. The CPU and mobo were circa 2001. There is a massive gap here and this type of gap usually exists for most systems, but not for Super Socket 7 which will only work with era correct cards.

There is a website here http://www.amd-k6.com/os-support/

. . .where the guy explains running what seems to be impossible. It is unlikely that he has both OpenGL and DirectX working with the setup he describes. Don’t let this site fool you into tying a Geforce FX card on this type of system. It will not work!

It is entirely possible that this would work better with Windows 98 SE, but I refuse to use it. It’s buggy and its task manager is more like a modern day phone (where you don’t really have a clue what is actually running in the background).

When I get this system working, I’ll report back here maybe with some benchmarks.

Here are the system specs:

GA-5AX Rev. 4.1

768MB PC133 SDRAM

AMD K6-2 400MHz

Creative ES1373

Windows 2000 SP4

 

UPDATE 09-08-2020:

I figured I should update this here rather than making a new post cause this will be brief. For anyone who is wondering what I got working with this system, well, it turns out the voodoo3 card was the best. It worked perfectly with both OpenGL and DirectX. This project is now complete.

Oasis is an adventure game that I created using AGS. If you don’t know about AGS, it is a program that allows you to create adventure games that are similar to the old Sierra games from the 80s. Kings Quest and Leisure Suit Larry are probably the most well known.

This is my first official game made with this software, so it may have a few bugs, but it appears to be working pretty well.

Oasis takes place in the desert. You wake up there after receiving a mysterious message from a shaman. You have to survive and find your way out. This is still the alpha version, so it is missing an introduction (making the story incomplete). If you think you’ll like it, then wait for the full version. If not, then download it and get off my site 😉 No, actually, I’d really appreciate some comments regarding errors or suggestions.

Download here: https://drive.google.com/open?id=13s3pkEGFC7SdMcN5wGZh_j_KdEEcMNoc