Building an OpenServer 5.0.7 System on New Hardware in 2013

Your venerable (SCO) OpenServer 5.0.7 Point of Sale server bit the dust and you need a new system right away to get the Point of Sale software running again so your PoS terminals, whether dumb serial terminals or “smart” network stations, are not just expensive bricks. Of course some of the VARs that cater to the Unix based Point of Sale market stopped building Point of Sale systems on OpenServer when the former owners of the SCO brand went litigation crazy and started suing … get this … their customers. Maybe your VAR was one of the ones that moved on. Or perhaps he is just old and retired now. If not, you can probably get a new system built with OpenServer from your VAR. If your VAR has moved on, you may be looking into your options. Well, if you have the disks and the license key, why not build it yourself? I will tell you some parts you can use today, in 2013, to do just that.

I recently rebuilt a failed OpenServer 5.0.7 Point of Sale server for one of our local clients. I received a call that the server would not boot back up after a power event where the circuit breaker blew out on the power strip connected to the system. The server’s power light would come on when power was applied, but the system would not POST. This was a low-end server actually built on a desktop motherboard. It was a bit over five years old since the last rebuild and it was about time for the hardware to be replaced anyway. As my shop is an AMD shop of course this was an AMD build.

Likely just the motherboard was the dead part, but a direct new replacement for that over five year old motherboard could not be found. There are plenty of used ones on the used parts market. The client did not want some used motherboard that might die at any time. (His words, not mine.) So I shopped around to find a real BIOS based (No UEFI please.), AMD CPU capable, small business server motherboard and came up with the ASUS KCMA-D8 server board. To this I added an AMD Opteron 4122, socket C32, Quad-core CPU. Then 4 GB (2 x 2 GB) of Kingston 1066MHZ DDR3 ECC Registered RAM. The OpenServer 5.0.7 product is a 32-bit system, so anything more than 4 GB of RAM would be a waste … unless we were installing this as a virtual machine on top of another host. In this case, it was a “bare metal” install, so 4 GB it was. A Dynatron 2U and Up 60mm CPU Cooler model F661 was purchased to provide cooling for the Opteron 4122 CPU.

This Point of Sale shop does not need more “horsepower” than the build shown here. They are not even using SMP, so three of the cores on this CPU are idle. But if you need more “grunt” and you do use SMP, this board will take two Opteron 4100/4200/4300 series CPUs with up to 8 cores each. That should be enough muscle for almost any small to medium sized Point of Sale, or vanilla Accounting, back-end server.

The KCMA-D8 motherboard has no parallel port(s) and no IDE connectors. This can be a problem when replacing an older system that did have those parts. The client has two perfectly good parallel printers used in the PoS shop, so a 2 Port PCI Parallel Adapter Card – EPP/ECP was acquired. Since the client’s old DVDRW drive still worked, and is an IDE, I found and procured a 1 Port PCI Express IDE Controller Adapter Card.

The old ATX mid-tower case was partially gutted to remove the Adaptec SCSI controller used for the SCSI boot/data drive, the dead motherboard, RAM and CPU. The new motherboard, RAM, and CPU were installed. Then the Adaptec SCSI controller was reinserted and connected to the SCSI drive. The new add-on boards mentioned in the previous paragraph were installed. Then the power supply, after testing in another system, was reinstalled. The system was connected to our KVM switch and powered on. The OpenServer 5.0.7 operating system came up with a few errors related to the old missing parts. But it did boot and I was able to “get root” and begin setting up the new parts after removing the references to the old parts, relinking the kernel and rebooting.

The IDE controller was seen as a second IDE device, but after running ‘scoadmin hardware’ to add the new card for the kernel, relinking and rebooting, it showed up and the DVDRW drive could then be used. The motherboard has dual Intel 82574L based network adapters. The latest eeG_5.1.2 drivers for 5.0.7 from the site cover this chip. As the network adapters were not yet working the driver was downloaded using my Mageia 2 Linux PC, burned to a CD, then copied to the OpenServer file system. From there the driver could be installed with the ‘custom’ command. This was done and the adapters were configured for use via ‘scoadmin network’, one with a static IP address for the PoS store, one with a DHCP client for use here at our office. The server does not run as a gateway, so this setup was left in place when it was delivered.

Finally the dual-port parallel card was the last item needing to be configured in the kernel. This card has a ASIX/MosChip MCS9815CV chip on it. The OpenServer 5.0.7 system sees this as “Other communications device” rather than a dual-port parallel card. So, I had to dig into the internet to find a way to set this up. To make a long search short, I found a way to get this working by hand editing the “pa” file located at /var/opt/K/SCO/link/1.1.1Hw/etc/conf/sdevice.d/pa with the IRQ 7 address assigned to the card by the BIOS (after moving the card because it was conflicting with the USB on IRQ 11), then inserting the base address and ending address for each port (After several trial and error attempts due to the card having several addresses reported with ‘hw -r pci’, but no documentation for OpenServer of course.) then relinking the kernel and rebooting. Here is how that “pa” file looked once the proper addresses were found:

pa      Y       1       2       4       7       0       0       0       0
pa      Y       4       2       4       7       0xb480  0xb483  0       0
pa      Y       5       2       4       7       0xb080  0xb083  0       0

As far as I know there is no documentation for hand editing the “pa” file in OpenServer 5.0.7. This may have been documented in older releases, but I have none of those available these days. I simply looked at a copy of the file by logging in remotely to another OpenServer 5.0.7 system that has a single working parallel port built on the motherboard and figured out where to place the IRQ and address data.

This is basically “it” as far as this build is concerned. You should now have all the information you need to build and install your own, new OpenServer 5.0.7 system on new hardware. Of course, if that is not your cup of tea, there are still a few of us x86 Unix VARs around that can do it for you.