It was the size of a typewriter, had a set of calculator buttons with the common operations and some other buttons to do simple programming. A major feature was the speedy little drum printer which would make a loud buzz and CHUNK sound when printing.
And finally it also had an optical card reader for programming. We had pre-scored punch cards which you could punch out to put in operation codes. And yes, it had hanging chads! More on the card reader in a bit.
This page describes a Monroe (same parent company as Litton) programmable calculator which is pretty similar to the Litton. The main difference is the Monroe had a display and the Litton had the drum printer. The section on programming on that page is pretty much how I remember it working.
https://www.oldcalculatormuseum.com/monroe1655.html
My HS offered an elective that semester called "Computer Math". I might have taken it but it conflicted with my calculus class. As it was, I knew many of the students and its teacher. The class goal was to learn how to use and program this Litton calculator. Remember, this is 1973 so this was cutting edge for a school.
Anyhow, when I saw the class using this machine I was intrigued and I started to read the large 3 ring binder manual. Using the keypad to do calculations, saving and restoring numbers and other things was easy to pick up. The next step was simple programming of steps using the keyboard. You could do any keyboard operation and do some basic if/then/loop thing. I seem to recall that branch targets had to be every 8 location but that could be my cranial RAM showing its age. (Turns out when I found the page for the Monroe machine it was every 16 locations!)
Diving deeper, I RTFM'ed and got to the good stuff - how to program it from the punch cards. I saw for each operation in the manual had a 3 digit code. But the punch cards had 9 punchouts in each column. That didn't compute (pun intended). I had a massive headache over this. Then like a lightning bolt, I got it. The digits were octal (new to me) and each was 3 bits and that mapped to the 9 punchouts! (I don't think 'bit' was even defined for this). Then my headache stopped. I had been smashing my face into the keyboard!
Programming with the card opened up a whole world of possibilities. You could branch to any location. You had 128 operation slots (we didn't get the extra 128 slot option it seems). There were all sorts of extra operations like storing numbers in a half of a register thereby doubling the number of storage slots. Functions like factorial and more trig operations were supported. I was quickly able to code up tiny calulation loops doing Newton's approximation and continued fractions. Making the drum printer run hard was part of the fun.
We even learned to chord (hit multiple keys at one time) the keyboard to OR key codes to get codes normally only accessible by using the cards. We found we could do a factorial this way. It was cool doing 100! and seeing the maximum possible value print out and finding out the maximum factorial that could be done without overflow.
All during this time, I watched the students in the class work on their assignments. And I started to help some of them out (likely those who were friends with me!). I became the goto (another pun) geek to help with the calculator. I was effectively a self-taught teaching assistant for the class.
So I went to the teacher and said that I would like credit for the class as I was mentoring many of the students. He was amenable to the idea and gave me some programming tasks. I don't recall the first two but I got them working without trouble. The third one I remember oh so well!
It was to calculate a bowling score from values typed in from the keypad. I won't explain here how bowling scoring works but there are 9 frames where the logic is the same. I was able to code that just fine. The problem is the 10th frame has several variants based on what you scored in it and the bonus rolls you may earn. This meant many more conditionals and branches and the logic ate up my operation space. I couldn't code up the very last possible condition. So it mostly worked. Perhaps with my current experience I could rewrite so it completely fits into 128 steps!
The teacher was fine with my work and gave me credit for the class. This could be a rarity - getting full credit for a HS class than I never attended!
So the life change was that I asked for a recommendation to take programming classes at Brooklyn College that summer and started on the long strange trip of my computer career.
It's fascinating that with all the time we've known each other we never discussed this common ancestry -- I too learned to program on a Litton desktop calculator, at roughly the same time you did. Being 3 years younger than you, I was in junior high school. The NYC public school system must've gotten a good deal on a bulk purchase of those machines!
ReplyDeletecheck out the link i posted to the calculator site. worth a gander.
ReplyDelete