I never learned assembly language. When I bought my first Tandy Color
Computer, I read everything I could about it. I taught myself basic
and tried to learn assembly language, but never got it.
I just wonder if this would have helped?
http://kottke.org/11/12/altair-8800-kits
Why do you think it would help?
There's nothing magic about that front panel. Within months of the Altair
coming out, there were other computers that didn't have a front panel, but
did have a monitor in ROM. Those usually allowed the same sorts of things
that the front panel did, though of course you either needed a terminal or
a computer that had some LED readouts and a small keyboard. The monitor
would allow one to load things into memory, you could single step the
program, you could put in an interrupt to stop the program at a certain
point, you could display the contents of the registers and the
accumulator, evne the contents of a given address in memory.
That front panel was a burden, it took a lot of wiring, lots of parts, and
if you changed the CPU to another type, it likely wouldn't have worked
with the new CPU. The monitor ROM was simple and cheap, and probably did
more, and provided things you'd need anyway later.
As I mentioned a while back, one reason the RCA 1802 CPU was popular for
home builders was that one could build a simple system with very little
wiring. The CPU could be set to advance the address bus on command, and
separate itself from the databus (or was that done with buffers
externally?), so with virtually no external hardware you hd the function
of the Altair's front panel. You could start from zero and get some
program into RAM, then run the program. Just like flipping some switches
on the Altair to enter a bootloader, that would load something else from
paper tape.
Of course, someone, I think Sol Libes, once had a bit in Byte about
jamming the databus of the 8080 with NOPs (no-ops, which told the CPU to
ignore it and advance to the next address) so you could increment the
address bus, having the CPU single step. Thus you could also easily load
RAM with any CPU, using the same concept. A later article in Byte had a
siple 8085 system using this scheme, and then later Dr. Dobbs ran a
similar one about the 68000.
For that matter, the notion of jamming a "NOP" into the CPU's databus so
it would keep incrementing the address bus was the basis for Don
Lancaster's Cheap TV Typewriter scheme.
Nowadays, most computers do not have a monitor built in, which makes it
difficult to play with assembly language. But of course, the resources
are so much better that it's easy to load some sort of monitor from disk,
and any decent system would have such a monitor in some form. Yes, the
early 8bit CPUs had such simple arhitecture and address modes that they
were easy to learn on (even by the 6809, it had become more difficult.
while I did all my 6502 programming by hand assemblying code), but the
resources for later CPUs are likely more advanced. So likely whatever the
computer or operating system, there is the same sort of cozy environment
for single stepping code to see what happens, to see what changes in the
registers or to sample a bit of code, that the loss of hardware monitors
or even hardware front panels isn't really a hardship.
Michael