New Project: Control SimH via a web browser


This place has been very quiet for 3 years+, but I now have more time and headspace to concentrate on DEC related stuff.

I just wanted to put up a brief post to describe my new DEC-related project.

The project centres around creating a web-based API and control panel GUI for the SimH Computer History Simulator.

In initial investigations into viability are using Python 2.7.6 on Ubuntu Linux and the Flask website micro-framework. This provides a lightweight, easy-to-work-with web framework that, at least for development purposes, requires no Apache server stack.

The current 4.0 SimH beta code (available via GitHub) permits use of a telnet terminal to control the simulator. Using Python’s native telnetlib module, I am currently intending to throw telnet commands at the terminal to see what I can make it do. That will hopefully, int turn, lead to the implementation of a Alpha-grade version of an API on which I can build a web front-end. Eventually I would like to investigate using the simh_frontpanel.h C API instead, which is the ‘official’ formal C API built into the latest 4.0 beta version of SimH. That presents an additional challenge in that there is no Python to C wrapper for the simh_frontpanel API. This presents another issue I will likely address going forward, either by bringing in a C / Python module developer or learning to do it myself (which right now I don’t fancy).

Thus far I have the flask app bootstrapping and a very simple API class that spits out some telnet strings. It’s progress… of sorts!

Stay tuned for more shenanigans!

Posted in Blog | Leave a comment

VAXstation 4000 Power Switch – Issues and Cleaning

I recently was very happy to take delivery of 2 VAXstation 4000 Model 60 machines from a generous friend I met at DEC Legacy 2011. They’ve taken some time to get to me but are in very good condition and came complete with keyboards, mice and 3W3 video leads so were all my friend (who is due t collect one of them) and I needed to get into the VAX hardware arena. In my case it will probably be the only VAX I own for the forseeable future as I don’t have room for anything bigger!

One issue I ran into with both VAXstations was the power switch, situated at the front-left, was sometimes reluctant to turn off. To understand fully why this is you have to look at the power supply operation itself and how the switch actually switches the machine on. It seemed (and I’m no expert on PSUs so forgive my ignorance) that the power supply is switched by a simple 2-state, 2 pole switch that makes or breaks a circuit depending on it’s positon. However, on inspecting the switch I discovered that the ‘I’ (on) position was actually an open (i.e. ‘off’) position switch and to turn the machine off the switch actually closed and made contact. It would seem the switch operates some sort of latch circuit that controls the power supply, rather than switching the current directly. The upshot of this, of course, was that the symptoms exhibited, the computer came on as soon as mains power was applied and refused to switch off when the switch was moved to the ‘O’ position, were indicative of a poor contact in the switch. Upon contacting the friend that supplied the machines I was informed this was a very common issue.

It seems that DEC’s logic may have been to setup the PSU so that if, over time, the PSU switch began to fail, the failure or poor contact did not render the machine inoperable and also would not if it occurred during the machines operation lead to it switching off suddenly and losing data. Clever but initially a little confusing, but this is DEC we are talking about…

Anyway, it appear s the switch just gets dirty and results in poor contact so the power control latch doesn’t drop when you switch the computer ‘off’. I thought I’d share with you the pictorial instructions I have for cleaning the power switch. It’s quite easy.

Firstly remove the PSU from the VAXstation 4000, it’s relatively simple, but sadly I ave no pictures. Remove the hard drive carrier at the front-centre then unclip the blue-coloured latch under the front of the PSU an pull. On my 4000/60s there is some kind of metal clip on the outside face of the PSU that is attached to the case. I as yet have no idea what it’s for, but it can interfere with removing the PSU so ensure it is out of the way. Some pressure underneath the PSU is required as there is a large multi-plug anchoring it to the main logic board.

Once out of the machine look at the side wit the fan outlets (it also has a longer plate that extends below the PSU). There are 2 Phillips-headed screws that hold the halves of the casing together (indicated below). Remove these.

Power Supply Casing

Next the large multi=plug that connects to the main logic board must be unclipped. There are 2 spiral clips that hold it in position. If these are compressed the plug will pop out of the holes and drop into the PSU.

Un-clip the power supply connector

With the PSU connector unclipped, the part of the casing it was attached to should now come away. It hinges away then can be detached completely.

PSU Cover

With the casing removed you can now see the insides of the PSU. Be careful, some capacitors may not be fully discharged and if the VAXstation has been shutdown recently some components may be hot! I strongly advise against using any metal implements in the PSU or performing any work that might create metallic dust.

Power Switch Location

On inspection, the switch can be seen to have a small port hole in it (this may not be the case on all PSUs!!) through which the switch’s metal armature can clearly be seen operating. It is visible below at the ‘open’ position. Remember that’s I (ON) as far as the PSU is concerned. Testing with a meter will show you that the switch makes the circuit when in the O (OFF) position. Both mine were very intermittent but would make if a gentle pressure was applied to the armature when closed.

Power Switch

Set the switch to I (ON) position and spray a good dose of cleaner into the switch. Exercise the switch between the two positions ensuring the switch opens and closes fully at least 20 times. This should clean the worst of the corrosion and dust off the armature.

Allow all the cleaning solvent to dry from the switch (alcohol cleaners evaporate quickly, especially if the PSU is still warm). Test the switch with a meter and ensure the continuity of the switch in the O (OFF) position is constant and reliable. If it is working correctly, reassemble the Power supply and replace in the VAXstation.

Posted in Blog | 1 Comment

Final Thoughts for RetroChallange 2012

Wow, this has been quite a ride for my first RetroChallenge.

With the VAXcluster SimH project, I took on a project that had a lot of unknowns and a lot of things I didn’t know the next thing about. I feel like I’ve succeeded in a t least learning the things I set out to learn. Alas the cluster unit is not finished and I haven’t ticked all the boxes on the list. however I have the necessary knowledge to finish it and will do so, keep an eye out here for the results later on this blog and via Twitter. Had

My friend and I’s effort to restore the AlphaServer 4100 didn’t quite go as well, sadly, it refused to work and we don’t know why. We’ll take another look at it sometime. It might work one day.

I’m afraid I haven’t documented it as well as I wanted, but truth be told I’ve spent a lot of the time I should have been writing it up actually doing it so I don’t feel like I’ve copped out too much. I have tweeted quite a few things on the @DECtecInfo Twitter account too, so I have been documenting it in short bursts (including some of my abject frustrations).

I will definitely be back with more RetroChallenge goodness next time, hopefully I’ll pick something slightly less.

I’d like to thank:

The RetroChallenge 2012 team
Mark Wickens (@urbancamo)
Stephen Hoffman (@HoffmanLabs )
The Denizens of the Deathrow #vms IRC channel
The members of the HECnet and DECtec mailing lists
HP for continuing to provide docs and support for Hobbyists using OpenVMS
Anyone else I missed out…

Posted in Blog | Tagged , , , , | Leave a comment

RaspberryPi VAX Cluster: We have a Cluster!

First VAXcluster report.

This screenshot may not look like much, but it’s the first ‘SHOW CLUSTER’ report from the cluster box executed in VMS on PIVAX2 (the local-booting Raspberry Pi node).

Posted in Blog | Leave a comment

Raspberry Pi VAXcluster: Software Mania

Everything pretty-much for the cluster project has moved over to the software side. I have made several significant progress steps:

  • I cracked ipnat, which I am using on the Intel routing to route traffic between the internal 10.0.0.x network and the outside world (via the external LAN port). This means I can now assign TCP ports on the external interface to internal addresses to forward things like ssh and telnet access straight to the outside world. I couldn’t have got my head around it without the excellent Firewall Builder (, whioch priovides a handy GUI interface to build your IPFilter and IPNAT rules in.
  • I have installed and partly configured OpenVMS 7.3 on the first (Intel) node. It’s s step forward, at least.
  • I have begun installing and configuring OpenVMS 7.3 on the second (RaspberryPi) node.
  • I installed and setup DNSmasq on the Intel routing node so that the cluster’s DNS is not dependant on an outside DNS server. DNSmasq is a lighter weight and easier to configure solution than a BIND server and it’s setup alters dynamically depending on the operating system’s standard resolv.conf and hosts configuration.

Overall things are progressing well now I have the hardware settled down. The only niggling issues is one of the Raspberry Pi boards may have a flakey ethernet interface. I have experienced occasional network interface black-outs, especially when copying files to and from the board’s onboard storage. Ther are 2 possible explanations, one is the board isn’t quite getting enough power, the other is the LAN interface has some kind of fault which makes it flake out under heavy load. I intend to swap the board for a different one (as I have a spare) and see if that solves the issue.

Posted in Blog | Leave a comment

Raspberry Pi VAXcluster: Node Bay covers

Found a pair of very nice mesh 5.25″ blank panels from my gaming PC case that I have adapted to cover the 5.25″ bays on the cluster box. Looks a bit neater and I can still see the blinkenlights :)

Posted in Blog | Leave a comment

RaspberryPi VAXcluster: Build Photos 2U Short (204mm) 2U Short (204mm) chassis (empty)First fitting - ITX motherboard, switch and SSD driveFirst fitting of motherboard, switch and SSD driveFirst fitting of motherboard, switch and SSD driveThe cluster, all shut in the box.
Refit 25-07-2012 - new PSU and wired in more fansRefit 25-07-2012 - new PSU and wired in more fansRefit 25-07-2012 - new PSU and wired in more fansRefit 25-07-2012 - new PSU and wired in more fansRaspberry Pi mounted in 5.25" TrayRefit 25-07-2012 - new PSU and wired in more fans
Refit 25-07-2012 - new PSU and wired in more fansRefit 25-07-2012 - new PSU and wired in more fansRefit 25-07-2012 - new PSU and wired in more fans

SimH VAXcluster Build, a set on Flickr.

Here’s the promised photos, a day late and a dollar short.

Posted in Blog | Leave a comment

RaspberryPi VAX cluster: I haven’t forgotten about you!

Hi, sorry for the lack of articles and updates. I haven’t abandoned the project, actually I’ve been too busy building up the hardware together and working and figuring out silly things like the TCP/IP routing (yes, I did end up doing that and now I know how to build a TCP/IP gateway in NetBSD!), power wiring (with help from dad’s soldering skills) and the actual software setups.

So far I now have the Atom motherboard plus a second GBit NIC installed and working. It boots NetBSD 5.1.2 from a 32GB SSD and routes traffic from the internal 10.0.0.x network to any external network I configure on the external LAN port, meaning any internal node has internet access. I even added DNS forwarding on the Intel board so the unit only requires configuring at the external ethernet port (Intel/NetBSD system) and nowhere else. There is also a bridge in place to bridge packets between the interfaces on the Intel board this is purely so the DECnet nodes can see my main LAN and my Area Router.

The aforementioned soldering skills yielded a 4-pin MOLEX adapter with a 12V out and 5V out wires to run the internal Switch and the internal USB hub. The switch does all the internal networking. The USB hub (which has a power switch on the lid) powers the Raspberry Pis via a couple of Blackberry USB charger cables (because they are only 30cm long!). The upshot of this fancy wiring means the whole unit powers on from the ATX power button on the front panel… which is awesome, no? At present it’s using a PicoITX 120W PSU but because there’s a gaping hole in the back panel, and I think I might be overstretching the PicoITX a little, I am replacing it with a full ATX PSU before I finalise the box.

The Raspberry Pi boards are mounted on trays in the 2 5.25″ drive bays. The USB host and Ethernet ports (and the LEDs) are forward facing, allowng for access fro mthe front of the unit without removing the lid (mostly a diagnostic aid). I will also eventually fit right-angle HDMI adapters to offer a forward facing video port also. The idea is you can pop off the pane that covers the RPi slot and diagnose the board if an issue arises without removing the lid or taking the tray out. I will ultimately slot the 2 faceplates so I can see the LEDs from the outside and refit them (I may also mod them to make them easier to remove).

The whole thing is houses in a 204mm deep 2U rack chassis provided by the excellent folks at who have come up with a real gem of a case. It’s perfect for the task and was a very reasonable price (for a rackmount chassis).

You are probably all thinking ‘where are the photos?’. I intend to take some tonight at some stage and post them to Flickr. I will also post them here for your viewing peasure.

So far all this isn’t very retro but that part is coming. All this is groundwork or running the emulators and bootstrapping the OpenVMS 7.3 systems on the individual nodes. I have to learn VMScluster, MOP serving and a few other tricks, which is going to great be fun, I am sure.

Posted in Blog | Leave a comment

AlphaServer 4100: Replacement Parts

As you know I had no luck reviving the AlphaServer 4100 after it blacked out on me when I initially powered it on. Having traced the issue to the PCI back-plane subsystem via a lot of LED chasing I hunted down some replacement parts. As luck would have it a guy was selling a load of DEC gear on eBay including parts for a 4100. I managed to obtain a MC bus to PCI backplane adapter board (where the fault reading LEDs are), PCI backplane board (which I suspect is the faulty part and is preventing the PCI subsystem coming up), front panel (the original is broken and although it works the reset button doesn’t work that well) and the RIO comms board that sits in the bottom of the PCI bay and carries the serial ports.

My thinking is that the PCI bay was the most exposed part of the machine while it was in storage and looked like it had been subject to damp. I suspect therefore something failed on the PCI backplane when I booted the machine up and left it running for a few minutes because it had been damaged by the storage conditions. Replacing the RIO board is a precaution I decided to take after bartering a reasonable price for one with the seller as it’s in the bottom of the same bay and may well also be damaged. Even if it’s not I want a spare in case I blow it up trying to find a 12V power adapter that works in the plug on the back.

All I have to do now it methodically replace each part in turn and see if it gets us anywhere. Fingers crossed, eh?

Posted in Blog | Leave a comment

AlphaServer 4100: No dice

I replaced the PSUs in the AlphaServer 4100 yesterday and… they work but the machine still isn’t starting up. Nothing on the LCD panel, nothing on the terminal port.

I’ve swapped CPUs around, run it with 1, run it with 2, yanked all but 2 boards of RAM… I am at a loss really what I need to do next. I am starting to think either the system board or the PCI backplane system is bad. Either that or the PSUs are just not working right under load or something. The plethora of diagnostic LEDs shows no fault that I can see and so isn’t helping me diagnose it.

I don’t know the ‘Rawhide’ series Alphas nearly well enough, evidently, so I am now looking for outside help. I’d hate to have to write this machine off but it’s looking pretty grim.

Posted in Blog | Tagged , , , | 2 Comments