Close

Enter the Zero

A project log for TIS-100 (Geiger)

An ATTINY based TIS-100 Clone

big-boy-peteBig Boy Pete 06/12/2016 at 22:330 Comments

From the very beginning I've wanted to implement this project with processors and parts that "felt authentic" - that's part of the challenge of a problem like the TIS-100.

I found a way of translating TIS-100 assembly programs into a byte-code that was efficient and took the fewest number of cycles to execute. I have experimented with single method C code so that nothing gets put on the stack. Through all of it, I thought that the ATTINY would be a sufficient chip.

The ATTINY has enough program space to hold the small program. The ATTINY has enough RAM to run our program. The ATTINY has enough IO (just enough) to support the communication protocol I came up with. However, it does not have enough raw speed.

The Raspberry Pi Zero is overkill. It's at least 10x faster than what we need, it runs a full OS, it has video out for every single node, it has more than enough IO, it has its own disk for each node. It's overkill, but it's overkill in a pleasant way. There are some freedoms to be gained from switching platforms to the Pi Zero.

My current intention is to still keep 'real' connections between each of the boards by building out a back-plane that MUX's the comms between the Pi Zeros. However, I will probably use the 12 nodes as Serial Gadgets hooked to a master node Pi Zero that will handle visualization, keyboard, and syncing.

However, there are some really dirt-cheap LCD monitors that are about 3 inches that I could hook to each one of the Zeros -- which would emulate the baffling visualization we see in the game.

Discussions