Fortran compiler update and back to the hunt for information

Progress slowed a little bit in July, as my vacation is over and I am back to teaching. It did take another month for testing and finishing touches on the Fortran compiler. It now does everything that the GE-115 Fortran did and a few bonus things as well. It was tempting to add new features, but I have tried to remain true to recreating the past and not improving on my recollections too much! As an example, the GE-115 did not have logical variables, as I recall, so the compiler does not support this. However, all the infrastructure is there to turn that feature on.

There is always something more to do. I have not implemented the entire library of run time routines that were part of the Fortran library. These are pretty easy to knock off and I will tackle them at leisure. For example, there is a SIN function to calculate the sin of an angle. To implement it, I don't need to write something in assembler to implement an algorithm to calculate the correct result. Instead, I just need to collect the parameter value, pass it to SIN function in the implementation language, Delphi, and then pass the result back to a temporary variable created by the expression analyzer. Not so glamorous a task, really, but important for completeness.

The compiler supports vectors and arrays, character variables, virtual card input and virtual printer output. It can handle nested DO loops, computed GO TO's and user defined functions and subroutines. I stopped short of implementing some of the memory management features, such as COMMON, EQUIVALENCE and *SEGM (for identifying segments for memory swapping). The virtual machine has lots (haha, relative to 4K!) of memory so these shouldn't be needed.

What next?

I am back to hunting down more information about the computer and the architecture. I have discovered that this computer was originally called the ELEA 4115 and was developed by Olivetti in 1962. It was also referred to as the Olivetti-115. GE acquired the Olivetti computer division and Bull Informatique in France a couple of years later. The computer became the Bull Gamma 115 in Europe and the GE-115 in North America. Eventually, the GE name became the standard. A few years after that Honeywell acquired the computer division of GE and it became the Honeywell 115. When I first saw this computer at Eastview Secondary School in Barrie in 1969, it had been acquired from Honeywell, but all of the manuals said GE-115. The computer business was a bit like the wild west in those days.

I have learned that this machine was one of the last second generation computers. It used transistors rather than vacuum tubes, but had not evolved (originally) to use integrated circuit boards. This may have changed at some point in the manufacturing process. I remember peering inside the panels of the CPU and seeing lots of wire. The computer required a raised floor because there was so much cabling that ran between various sections of the CPU. I mentioned earlier that the computer has no registers and no interrupts. It is hard to imagine designing such a computer now, but at the time, it was amazing!

I have heard that the Eastview computer was donated to a museum in Ottawa Canada. I have yet to visit, but I understand that the card reader and printer are on display. I wonder if they kept the rest of it?

The Computer History Museum in Mountain View California is busy digitizing some of the historic manuals about the GE-115. I can't wait to see what can be learned from these. At this point, I have had to guess the hexadecimal op codes for all of the native machine instructions. It would be great to get an accurate list of these, and also a list of the opcodes to see if I am missing any (the list I have is from the Gamma 115).

So, the project will now go to the back burner and put on simmer. I have never been happier in my life, due in part to feeling comfortable immersing myself in this project. I hope you are able to find as much joy in your life.



Comments

Popular posts from this blog

How it got started

The Student Computer Operator

So much has happened