A couple of observations.
Taking the PDP-11 as a fairly typical example, the switches are "data" and
"address". While running, the data switches were visible to the software, and
could do something if you wanted to (typically this wasn't done). When stopped, you
could set an address in the address switches, and examine memory at that address (showing
it in the lights) or change it (with the data supplied by the data switches). You could
also start at the address in the address switches.
Also, while running, the lights would display some bit of system state. On a fair number
of PDP-11s, you could select what to display. When running RT-11 you would typically ask
for the "display register", a register written by software that appears in the
lights and contains the idle pattern. The pattern would slow down as the system got
busy.
On other operating systems, say RSTS/E, you'd ask for "data paths" which was
some internal state except during a WAIT instruction, when it would show the contents of
R0. That was where RSTS would put its idle lights pattern. The result is that you'd
see the clear pattern on a nearly idle machine, a blur if the machine is busy, or a frozen
pattern if the machine was stuck in an infinite loop. With experience, you could gauge
what sort of thing a system was doing by its lights. This is why in RSTS/E development we
had Field Service remove the "remote diagnostics" (no lights) consoles and put
the lights ones back in.
Very early PDP-11 systems needed to have some bootstrap toggled in, but by the time I saw
my first one (1973) diode based boot cards (16 words, just enough for early disk drives)
had appeared.
Other machines might be different. Some had vast quantities of lights to show a lot of
internal state at the same time; I remember Burroughs mainframes and some IBM/360 models
(360/65?) in particular. A few had none at all: the CDC 6000 mainframes had a CRT display
under program control, but no lights whatsoever. It did have a boot loader, in the form
of a 12 by 12 array of toggle switches -- a 12 word changeable ROM. :-)
The first machine I got my hands on, a Philips PR8000 -- 24 bit minicomputer -- had 8
digit light displays -- 8 octal digits for the 24 bits of data. And the data entry was
with 8 sets of buttons, one set for each octal digit. The buttons were marked 4/2/1 and
arranged so you could enter a digit with one finger press:
| 2 |
| 4 | 1 |
so pressing in the middle would get you 7, bottom center a 5, etc.
The "boot ROM" was mentioned, which applies to various DEC machines. On some
other machines, the boot operation might not be a small program but a specialized hardware
action instead. That applies to the CDC mainframes, for example, as well as machines like
the IBM 1620. There a boot operation ("deadstart", "initial program
load") might put the CPU and I/O devices in some specific state and then start a data
transfer from some selected device to some fixed memory location.
paul