Writing about how things were brings back all kinds of memories. My first job after graduating university was at International Computers Limited (ICL) in West Gorton, Manchester, England.
ICL was the UK equivalent to IBM in the USA, only much smaller. As I have mentioned before, I started my new job in the summer of 1980 as a member of a team designing a Central Processing Unit (CPU) for a new mainframe computer.
Music to my ears
Once we had designed a new computer and build the prototype we had to test it. This testing came in multiple forms. When it came to burn-in testing (running it for several days to make sure it didn't crash), one approach that I remember as though I was still there was to get the machine to play music – but I'm not talking about it playing an MP3 file or anything like that...
...I know this may sound silly, but what we did was to have a loudspeaker hooked up to the CPU such that whenever it executed some form of "Jump" instruction the speaker would be presented with a pulse. Thus, if you created a loop that jumped 2000 times a second, for example, you would end up with a 2kHz tone (plus lots of harmonics, but we used capacitors to smooth things out a bit).
The thing is that we didn't play simple notes. The first time I entered the main prototyping area and got my introductory look at one of these monsters I could hear some classical music playing in the background.
An ICL 2900-series mainframe (This one was later than the ones I worked on)
At first I thought the music was coming from a radio (although it did sound a little "tinny" and "strange" in a way I couldn't put my finger on). However, as we walked around, I soon realized that the music was coming from the mainframe itself. When I enquired what was happening, the whole jump instruction – loud speaker setup was explained to me. The idea was that the computer was processing lots of test sequences between jumps. Also that – by varying the type and number of instructions – the time between the various jumps was controlled.
So why did we do this? Well, while we were all working on different tasks, the music would be playing merrily away in the background. If the music stopped – or started sounding "weird" – we would immediately know that a problem had occurred, in which case the system would be halted and we would backtrack through the data (which was being constantly collected) to determine when the error had occurred and what exactly had gone wrong.
The one thing I never questioned until today (as I pen these words) is who created the test program that resulted in the music and how was this program actually implemented? I now realize that it would have been almost impossible to create by hand.
In one of my articles, I provided a link to a program that can take an image and generate the ASCII-art equivalent. What I think must have happened is that someone created a similar program to generate the music. I'm thinking that they would have created a table describing of all the different instructions the computer could run and how many microseconds each instruction required. I also think they must have had some way to capture a tune (notes and durations) as an ASCII (or similar) text file. Then there must have been some program that took the file containing the tune and generated a corresponding program with all the instructions including the jumps.
If anyone has any more information on this, I would love to hear about it...
文章评论(0条评论)
登录后参与讨论