Flocoder

I have now got a crude implementation of the Flocoder Flip program written using Flex and Bison. It can take a Flocoder file from the MUSS sources and extract what I hope is compilable MUSL code. The code is on GitHub.

I am not 100% sure that the code is valid as I have taken a very naïve approach to the code generation stage. Every BOX except the start box is labelled, and every BOX ends with a jump to the next box in the FLOW sequence. It does not attempt to merge consecutive BOXes.

However, I am hoping that this is enough to take the original Flocoder source for Flip and turn that into MUSL that I can then compile. The next step, which I have just started, is to create a MUSL to C compiler that will generate C from the Flocoder source for Flip, so I can get a version of Flip working in C. If I can do that then I should be able to process the Flocoder files using the proper code for Flip and compiling those to C as well.

Posted in MUSS, Retro-Computing | 4 Comments

MUSS GitHub Project

For anyone who wants to follow the effort to revive MUSS, I have started a project on GitHub. You can find the repository here. The initial effort is focussed on creating FLIP to translate the Flocoder to compilable MUSL and I have made a start on that.

Once I have FLIP then I will need to start the process of compiling MUSL. I will probably compile the MUSL to C and then compile the original MUSL compiler (written in MUSL), but that is a little bit further off.

Posted in MUSS, Retro-Computing | 1 Comment

MUSS Source Code

 

MUSS is the Manchester University Software System. It is an operating system that was designed and built at Manchester University for MU5, designed to be portable, and in fact ported to other machines.

In October 2017 I asked the editor of Resurrection, the Computer Conservation Society’s publication, to publish an appeal for information relating to MU5 to help my emulation project. Then, in December 2017 I received a response from Eur Ing Brian Tompsett a lecturer at Hull University. He had a full set of printed MUSS documentation and a 9-track magnetic tape which he thought may have the same documentation on it. The interesting thing about MUSS documentation is that it is really a combination of documentation and code, written using a system called Flocoder. This meant that there may be machine-readable source code on the magnetic tape. However,  Brian Tompsett thought that the tape may only contain the portable parts of the sources from the post MU5 era, covering MU6G, PDP11, VAX11 and MC68000. This also ties in with the printed documentation I have seen in a store room at Manchester, which all seems to be post MU5.

In April 2018 one of Brian Tompsett’s tapes was sent to The National Museum of Computing in Bletchley Park, where Delwyn Holroyd read the tape successfully a week ago. It contained a tar file, inside which were a large number of documentation and source code files.

The tape appears to contain the source code for Flocoder, the Manchester University system implementation language (MUSL) compiler, large parts of Version 11 of MUSS itself and other compilers, including Fortran and Cobol compilers that Brian Tompsett wrote. I am waiting for permission from Manchester University and then I hope to post the files, possibly on GitHub.

It looks like the best approach is going to be to hand build a processor to implement the Flocoder FLIP (Form LInear Program) function to extract the MUSL from the documentation, and then build a MUSL compiler, which will allow me to bootstrap the building of MUSS. It looks like it may be possible to get MUSS built for PDP-11 and VAX.

Posted in MUSS, Retro-Computing | 3 Comments

Another DEC Rainbow 100+

I recently acquired another Rainbow 100+. Here is a picture of it:

Rainbow 100+

The badges are on their side because this was installed in a vertical enclosure.

This came about because a little while ago I was given a Rainbow, and the person who gave it to me had a second one that he was going to keep. He told me that he wanted the vertical enclosure for his machine, like the one below, which happens to be one that I passed on to someone else some time ago:

Vertical Enclosure for a DEC Rainbow

When the opportunity arose to buy a Rainbow in a vertical enclosure I let him know. He wanted the enclosure but not the machine inside. So we agreed that I would contribute to the cost of the purchase, take the Rainbow itself and he could keep the enclosure.

When I got it home it was in a pretty clean condition. It contains an RD51 hard disk, an RX50 floppy disk drive and a 192K memory expansion options, for a total of 320K memory. The VR201 is an amber version.

Before powering it on I visually checked the PSU, it looked fine. I then imaged the hard disk, just like I did with the previous Rainbow. Interestingly, the first attempt to read the disk failed completely. The disk span up quite happily, but the MFM emulator could not find any data. Cycling power seemed to fix it and I imaged it twice just to be sure.

I then installed the hard disk emulator in place of the hard disk and powered it up. Booting from the emulated hard disk brought up MS-DOS 2.11. The AUTOEXEC.BAT then took me into the Rainbow Serial Port Setup Utility (SETPORT) program. I found that the hard disk had WordStar 3.31 installed. At some point I will go back to that and remind myself what WordStar was like.

Anyway, I now have another Rainbow and another VR201 monitor, which is good in case I need some spares.

Posted in Retro-Computing | 2 Comments

More Leaking Batteries

I haven’t been very active lately because I have had to temporarily relocate my collection. While moving it back again I took the opportunity to reorganise things a bit. In doing so I came across the first two PC motherboards I ever bought. I found that both had leaking batteries. I have another machine, a DECstation 220 that has suffered as a result of the same kind of battery leaking, so I decided to remove these batteries immediately.

The very first motherboard I ever bought was a 286 board, with a Headland HT-12 chipset. If I remember correctly it had 1MB of memory.

The second board I ever bought was a 386SX board with an ALI chipset.

I have added these boards to the pile of things to get working. I am a bit behind at the moment with the fact, as mentioned above, of having to temporarily relocate the collection. I am still working on the TURBOchannel Extender PSU, a couple of ZX Spectrums and the DECstation 220. However, when I get a moment I will give these two boards a very quick spin just to see if they still work at all.

Posted in Retro-Computing | Leave a comment

Update on H7826 Power Supply Repair

It has been a while since I last posted anything about what I have been up to. However, I have been busy trying to find out what is wrong with the H7826 power supply out of my TURBOchannel Extender.

I received advice that there were errors in my method for checking activity on the primary side and that the fault could be on the primary side. I spent some time reverse engineering the schematics for the primary side. Not being an electronics engineer I may not have drawn this logically, and there will be tracing errors. I will update the images as time goes on, so by the time you read this it may have been improved, but don’t count on it. Unfortunately the part numbers are not labelled on the boards, so I have labelled photographs with part numbers that I have made up myself.

This is the schematic for the main input section.

This is the schematic for the 50-19530 daughter board, which I think is for Power Factor Correction.

This is the schematic for the 5019572 daughter board, which controls the switching transistors. This one was done by Matt Burke, I have added labels to a photo and filled in a couple of missing bits.

Further probing with an oscilloscope revealed that the 555 on the 5019572 daughter board was not oscillating, which means the switching transistors are not being switched. I then found that the Vcc input to the 555 was not rising above about 0.2V. So the next thing was to see why this might be.

Unfortunately, while doing the probing around the 555 I think I managed to discharge the large smoothing capacitors near the 555. Thankfully I had already turned the power off, but there was a sharp crack from the spark. I could not find any physical damage anywhere.

I took the 5019572 out to test it on the bench with a bench power supply. I found that it drew far too much current, the current limiter on the bench power supply happened to be set to 1.2A, and that is what it drew. Clearly there was a short. I suspected the 555, partly because of the spark problem. When I took it out I found that it was indeed shorted across Vcc and Ground.

I replaced the 555 and then I found that its output oscillated. However the current draw was still high and the other IC, the UC3842 got very hot. I checked all the resistors, diodes and capacitors for shorts and they all appeared to be fine, so I suspect the UC3842 is also bad.

I now have to order a replacement UC3842 and see if I can get the daughter board to work correctly.

I am not sure if the short (or shorts) have been caused by the spark I provoked. However, the fact that Vcc on the 555 wouldn’t go above 0.2V when the board was installed suggests it may have already been shorted, or the UC3842 was already bad, but of course I won’t know until I have the daughter board working again and installed back on the main board.

Posted in Retro-Computing | 1 Comment

Repair Progress on the H7826 Power Supply

I have been working on the H7826 power supply that came in the TURBOchannel Extender of my DECstation 5000/240. Normally, after a visual inspection, I will just apply power to see if a PSU works. This one, though, was not in a very good state, with a lot of dirt and corrosion, and bits of heat sink all over the board. You can see more details in my earlier post.

So, the first step was to clean it up and replace many of the electrolytic capacitors that are apparently known to fail. Most of the capacitors I removed were in the output area, although I did remove a couple of small electrolytics near the two big input smoothing capacitors. After removing the capacitors in the output area and cleaning it up it looked like this:

I did not find evidence of leakage, but the dark area under one of the capacitors is a bit suspicious. I tested the continuity around the dark area and it seems fine. I then replaced the capacitors and cleaned the corroded heat sinks as best I could. The results are in the pictures below:

So then it was time to see if the PSU works. I reassembled it, making sure the fans were attached, as well as the status LED. I applied power and….. nothing. I was disappointed, but not surprised.

I did some probing around to see at which point the PSU is failing. I found the voltage across the big smoothing capacitors was a healthy 330VDC or so, so they are fine (they were not fine on the H7878 in the DECstation itself). I then checked the primary side of the transformer and I could see a signal. However, when I checked the secondary side of the transformer there was no signal at all.

This could be a problem with the transformer itself, or something else after the transformer. It was impossible to check without removing parts, so I started by removing the transformer. Here is the board without the transformer (primary side on the right):

H7826 With Transformer Removed

In the two pictures that follow I arbitrarily numbered the pins 1 to 6 from left to right. This is the primary side, where the windings are 1-6, 2-3 and 3-4:

H7826 Transformer Primary Side

This is the secondary side, where the windings are 1-2, 3-4 and 5-6:

H7826 Transformer Secondary Side

While I was at it I got out a ringing tester that I made a while ago (thanks to a member of the classiccmp mailing list) to make sure that the transformer is working and does not have any shorted windings.

This is the result of the ringing test on pins 1-6 of the primary side:

H7826 Primary 1-6 Ringing Test

On the secondary side pins 1-2 and 5-6 gave this result:

H7826 Secondary 1-2 and 5-6 Ringing Tests

The other windings all looked like this:

H7826 Other Ringing Tests

I am told the latter result may be because there are insufficient turns on the windings being tested, and that these results show that the transformer is working and there are no shorted windings. That is a huge relief because I suspect that the transformer would be very hard to replace.

The next thing to check was the output rectifier. In circuit, one of the diode networks (an MBR 3045) appeared to show some shorts. That meant I had to remove them, to test them out of circuit. The problem here is that the rectifiers are screwed into a large heat sink and the parts around the heat sink make it impossible to reach the screws. This meant that I had to remove the whole heat sink. To make matters worse, the heat sink is fixed to the board by two pegs. I could not see how the heat sink was connected to the pegs

To do this I first had to de-solder the three diode network parts and the temperature sensor. Once I had done that I tried gently levering the heat sink off the pegs, in the hope that the heat sink was just held on the pegs by friction. Thankfully this turned out to be the case. I used a little bit of WD40 to help the process, letting it soak in first, and I soon had the heat sink and the 4 components attached to it out of the board. The pictures below show the pegs and the heat sink:

I used a Peak DCA55 tester to check the diode network parts and they seem to be working fine, so that is not the cause of the transformer not showing any outputs. When probing the holes in the board, the ones for the rectifier network nearest the output still appeared all to be shorted together, but I traced that to two low-value resistors, so that is not the problem.

So I am still stuck not knowing why there seems to be no signal on the output windings of the transformer.

Posted in Retro-Computing | Tagged | Leave a comment