Altair
(TXT) 2018-10-20: Altair 8800 Intro
Last year, I got intrigued by the MITS Altair 8800. I actually wasn't aware of
these computers before seeing one in a video by LGR. I was immediately hooked
by the lights and switches of the front panel.
(TXT) 2018-10-27: 8080 PRNG
I decided that my first assembly program on my Altair would be a Pseudo-Random
Number Generator (well, the first after doing 16 bit multiplication using
iterative addition, but that's not as interesting to talk about).
(TXT) 2018-11-21: 8080 PRNG Part 2
Before moving on to the next program (which still doesn't work right), I'll dig
into the Xorshift PRNG, explain how it works and give a little overview of 8080
assembly programming.
(TXT) 2018-11-27: 8080 RTC Timer
The next thing I was interested in learning on the Altair was hardware
interaction and dealing with interrupts. The Altair clone has the 88-VI-RTC
included which is a Vector Interrupt board and Real Time Clock.
(TXT) 2018-12-08: 8080 IO - echo
Time to take a leap forward in technology and human-computer interaction. I'm
allowing myself to use a terminal to talk to the Altair. A couple of
implementations of echo demonstrate serial IO.
(TXT) 2018-12-21: 8080 IO string echo
The echo we're used to is a program that takes a string then writes the whole
string back out. We don't need to invoke another program so we can skip that
part and just modify our echo program to work on strings instead of characters.
(TXT) 2018-12-26: Altair on WiFi
Putting the Altair 8800 on the internet is easy and cheap. Just takes a bit of
hardware and some firmware emulating a Hayes modem. You can get on a BBS in
minutes.
(TXT) 2019-01-06: Altair Networking Environment
After getting the WiFi modem working, the next step was to write a more useful
client for using it. I wanted to remove the need to send commands to the modem
directly and allow for some processing of data coming back. I ended up with a lot
more.
(TXT) 2019-11-24: Altair Boot Loader
Entering everything via the front panel was going to get overly tedious very
quickly. Early on, boot loaders were produced that would bootstrap more complex
programs read from paper tape, cassette, and eventually floppy disk.
(TXT) 2019-12-08: Altair Monitor PROMs
The availability of teletypes and terminals allowed for a vast improvement of
human/computer interaction over front panel switches. Monitor programs ranged
in complexity from simple boot loaders to development environments.
(TXT) 2020-02-01: Altair Assembler Part 1
As I keep complaining, it's getting harder and harder to hand assemble
everything. It's error prone and tedious. An assembler can handle a lot of the
work for me so I'm going to try to write one.
(TXT) 2020-07-26: Altair Assembler Part 2
Writing an assembler that is a far bigger program than I've written previously
has exposed some problems in my development style and workflow that I've had to
overcome.
(TXT) 2020-08-16: Altair 8800c
This Summer has been weird so I ended up going back to retrocomputing and
building an Altair 8800c.
(TXT) 2020-10-15: 8800c Problems
I haven't posted much as I've been enjoying working on my 8080 assembler on the
8800c. Recently, however, I've had a bit of an unplanned break.
(TXT) 2020-11-17: Altair Assembler Part 3
I had intended to write a series of posts documenting the process of writing my
assembler but ended up spending my available time writing the assembler.
(TXT) 2020-11-29: Altair Assembler Part 4
After completing the hand assembled assembler, the next step was to convert the
code into the assembly that the assembler will be able to assemble for me. The
process revealed some bugs and missing features.
(TXT) 2020-12-13: Debug Diversion
As I was finishing up my assembler, I knew I was going to need a way to save
assembled programs off the Altair so I starting working on a new bootloader-type
program. Writing, assembling, and testing revealed a new problem of trying to
debug programs that I don't have the hand assembled version of.
(TXT) 2021-02-19: Altair OS Part 1
After several project false starts, I finally settled on my next Altair project.
Spoiler: it's an OS.
(TXT) 2021-03-27: Altair OS Part 2
To get started, I had to answer some basic design questions. There are a couple
ways of handling things in an OS.