Vintage Computers


Kenbak-1 Bitwise Instructions

Introduction to Kenbak-1 Bitwise Instructions The Kenbak-1 Bitwise instructions include AND, OR, and LNEG. With these instructions, think of the individual bits within an 8 bit word. With “AND”, a particular bit must be high in both the source and compare words to get the value of 1 in the Read More »

Kenbak-1 XOR Operation

Kenbak-1 Switch Number to Binary

Converting a Kenbak-1 Switch Number to Binary In this section, we’ll be converting a Kenbak-1 Switch Number to Binary. This project is a good example of the Right Shift on the Kenbak-1. Basically, when the user presses a number, we’ll display the binary bit pattern for that switch number. Mr. Read More »

Kenbak-1 Convert Switch Number to Octal

Configure Minicom for Kim-1 (Uno)

How to Configure Minicom for Kim-1 (Uno) To Configure Minicom for the Kim-1 (Uno), there are a few parameters we will want to set. Once you set up everything properly, you should have no problem connecting to and enjoying the Kim-1 Uno! Without proper configuration, though, your experience will quickly Read More »

Configure Minicom for Kim-1 (Uno)

Kenbak-1 Indirect Indexed Addressing

Introduction to the Kenbak-1 Indirect Indexed Addressing The Kenbak-1 Indirect Indexed Addressing may seem a bit intimidating at first. However the concept is simple. Let’s say we have two different “sequencers” with different bit patterns. One bit pattern resides at memory cell 107-100. Another set of patterns reside at address Read More »

Indirect Indexed Addressing in the Kenbak-1

Kenbak-1 Indirect Addressing

Introduction to Kenbak-1 Indirect Addressing Kenbak-1 Indirect Addressing allows us to point to a variable memory location which contains the operand. This is useful for instructions such as LDA, and STA, etc. We don’t always want to reference the same memory location. Recall that in our last post, we create Read More »

Kenbak-1 Indirect Addressing

Kenbak-1 Indexed Addressing

Introduction to Kenbak-1 Indexed Addressing Kenbak-1 Indexed Addressing allows you to have a variable address. Typically, we use this to move through a series of memory locations to get or store data. In this example, we’ll create some crossing lights. In other words, the lights will start at both ends Read More »

Kenbak-1 Indexed Addressing

Altair BASIC Stopwatch

Introduction to the Altair BASIC Stopwatch In this section, we’ll write an Altair BASIC Stopwatch. Basically, we’ll use the first sensor input (switch 8) to start and stop the watch. When we turn on switch 8, the stopwatch will start. After that, if we shut off switch #8, the clock Read More »

Booting to Altair BASIC

KIM-1 (UNO) 6502 ScoreBoard

Introduction to the KIM-1 (UNO) 6502 ScoreBoard In this section, we’ll build a KIM-1 (UNO) 6502 ScoreBoard. Basically, you will have the visitor score on the left, and the home score on the right. I’m separating the two displays with the letters “EF” in the center display. (Enemies on left, Read More »

Kim-1 Scoreboard Program

KIM-1 (UNO) 6502 Counter

Introduction to the KIM-1 (UNO) 6502 Counter In this post, we’ll build a KIM-1 (UNO) 6502 Counter. We’ll use assembly language for this project. Basically, you can use this code to learn more about assembly. In this project, button #1 will increase the counter. Likewise, button #2 will reset the Read More »

Kim-1 (UNO) 6502 Counter

Kim-1 (UNO) GETKEY Routine

Introduction to the Kim-1 (UNO) GETKEY Routine The Kim-1 (UNO) GETKEY Routine allows us to accept user input. When the user presses a key, we can take action on that key. The GETKEY routine resides at $1F6A on the Kim Uno. In this post, we’ll write a simple program that Read More »

Kim Uno