Playing Games on a 60s Computer

Maybe “playing” is a bit much :slight_smile:

5 Likes

Excellent! Toggling in a bootstrap, loading a loader, loading Basic, toggling in some patches, running Basic, using the terminal to load and run a Lunar Lander program!

(A 1969 SEL 810A from Systems Engineering Laboratories)

Some screencaps:

Some interesting comments and links in the discussion on HN, including a link to the informative brochure (single-pass Fortran! index register! program protection!).

3 Likes

We used to have to type in the boot strap on the IMSAI at school to load BASIC off of the tape.

We had a small hex listing that we would use. The computer had a large DO NOT TURN OFF sign on it for a reason.

One day, my friend and I did try to toggle it in through the front panel. It was a tedious, disastrous affair that we didn’t bother trying again.

1 Like

As is famously known, true men did bootstrap their computers with the keys so you’re part of this exclusive club at least :slight_smile:
Seymour Cray famously did start the CDC6500 from the front panel without notes :slight_smile:
Likewise Woz loaded the INTEGER BASIC in hex using the Apple I monitor from the top of his head :slight_smile:

Real computers had CORE memory.
Bootstraps were still around after power was removed.
Dr Who, (Tom Baker?) made use of that fact to save the UNIVERSE once. People have often found strange things from core, when a old computer gets reused.

1 Like

When I entered computing, it had just become all micros, but books were still talking about entering bootstrap code, loading the loader, then loading the program… Which seemed rather strange. It took a while until I understood what was supposedly going on. But then, when I realized that core memory was nonvolatile, that binary loaders were quite minuscule and were usually located at the very top of memory, a bit of space, which was commonly respected by all programs, I began wondering again.

(I guess, it was about flexibility. When computers were still using a standard configuration and came with a built-in paper tape reader, you could go with automated initial instructions or RIM mode. However, when machines became more modular, memory sizes began to vary and there wasn’t a default storage device, things had to become more flexible in order to adjust to the configuration, Still, you would have to enter the bootstrap code and reload the loader only that often…)

PS: Who recognizes this one?
7756 6032 6031 5357 6036 7106 7006 7510 5357 7006 6031 5367 6034 7420 3776 3376 5356

1 Like

I know nothing but as it’s in octal, must be some DEC machine, like PDP-8 or 11 :slight_smile:

I can truthfully say I don’t recognise that RIM loader, but a search engine turns up this handy (official) reference card.

I was quite pleased, when I helped solder up a PiDP-8, to have my first and so far my only experience of toggling in a short program. I like (the idea of) toggling-in so much I even have a playlist for it…

https://www.youtube.com/playlist?list=PLoL32DDbWtVwpvfp_fq2u6pmc7tm9ZTnF

It is separated in groups of 12 bits (4 octal digits). For a PDP-11 I would expect to see some things like 167941 where the first digit would always only be either a 0 or a 1.

This I can believe.

Is there a source for this?

This doesn’t mention that.

This sounds like folklore, frankly. Memorizing 8000+ characters (as I assume INTEGER BASIC was at least 4K in size) is one of those savant feats folks do TV shows about.

It’s a feat to be able to type in 8000 characters of hex accurately from a piece of paper.

I can see after a time being able to memorize our cassette bootstrap on the IMSAI. Honestly, I only did it twice. Who wants to waste the time typing it in and then loading the 8K(!!) BASIC from cassette when we could be banging on code or playing games.

We typed it in off of a stained piece of paper, which was essentially an assembly listing with the opcodes and hex codes, it wasn’t just a block of hex. I think it was even commented, but I never really deigned to look. That wasn’t my fascination at the time.

But I would say it was less than 40-50 bytes, and if I had to do it every day, I can see having it memorized after a short time.

I think, there are two stories mixed up into one. On the one hand, there’s the tale about Woz coding Integer Basic by hand, since he couldn’t or didn’t want to afford a regular assembler, memorizing the hex code for all the 6502 instructions (which is highly credible), which he would have probably done on paper, and, on the other hand, entering the resulting code into the monitor (which would have been an unavoidable consequence of hand-coding). I could even see him entering any patches or fixes just in hex from the top of his head, but certainly not the entire code.

It’s the first one! :slight_smile:
The very first number is the start address, which may be a bit irritating, but you had to toggle this one in, as well…

(The above image illustrates quite well how you had to adjust the loader to your configuration, e.g., using DEC drives instead of a paper tape. Compare the standard loader and the loader actually used on the glued-on paper left to it.)

2 Likes

I’m pretty sure I’ve read he used to know the entire code of the BASIC by heart and could enter it without needing the tape. I don’t remember the source, though. Surely one of the innumerable books I’ve read on the subject, “Hackers”, or “iWoz” or whatever :slight_smile:

Going through some BCPL examples to test my system and I find this:

/* This is a re-inplementation of a moon lander program
   I originally wrote in BCPL in September 1973 for the PDP-7
   and the Vector General display.

   This implementation is intended to run on a handheld PC
   and will be tested under the BCPL Cintcode System for
   Windows CE running on an HP 620LX

   (c) Martin Richards   Oct 2000

Not quite the 60’s but there are bits & pieces of old stuff out there…

-Gordon

1 Like

To make sure, I wasn’t challenging your recollection of those sources, rather, how these stories came upon us. I deem it highly credible that he knew significant portions of the code by heart and all of the significant addresses, but, on the other hand, there are as many ways to express a certain thought or an algorithm in code as there are in natural language. What are the chances, I could reproduce a certain story, which goes for half an hour, in the very same words, without an error, even, if I had told it numerous times already? While I’m not awful at that kind of things, I couldn’t do it in the exact same words for the entire extent. (To my experience, we tend to treat passages and routines that we deem to be suitably done and perfect and which we aren’t revisiting that often in detail anymore, more and more as an opaque blob, which would have certainly been true for some basic or highly specialized routines.) – But then, I’m not an actor, and I’ve a high regard for those who can memorize and perform an entire play. Maybe Woz is a natural to these kind of tasks.

1 Like

I am reminded of this PDP-11 bootstrap, which was taped to the keyboard of one of my Tektronix terminals:

(This is an RL drive bootstrap.)

2 Likes

The story I heard was that Woz would set up a table showing off the Apple I at the Homebrew Computer Club and then type in Basic as the meeting was happening so he could demo as soon as the meeting was over. If it was from memory, the version of the story I heard didn’t say.

One rather amusing consequence of routinely entering the same code from memory over and over again may be the well known induction of false memory as a consequence of repeated story telling. (Compare several peer reviewed studies not mentioned here.) Meaning, to some extent, Integer Basic may have written itself autonomously. :wink:

It seems this Basic grew organically over several months:

I enjoyed demonstrating this BASIC at the Homebrew Computer Club. I never saw my name in print so I didn’t get that ‘Bill Gates’ fame, but I was known in my club. This was even before Steve Jobs saw that my computer existed. As time went by I only had to write one routine after another for each of those numbered operators. Every club meeting I’d have a few more commands that worked fully.

There’s a write-up here of the recovery of the 4k cassette version from an audio recording.

another couple of bootstrap loaders (ones my fingers probably remember but my brain doesn’t any more):
interdata 50:
interdata50boot

and pdp15:
pdp1540boot

Both of those were written by Hamish Dewar who was the master of writing the shortest possible bootstrap sequence!

Extracted from Noddy Goes To The Machine Halls

1 Like