Software Information

Software Overview

The Turing machine is controlled by a Parallax Propeller chip. Most of the programming for the machine is done in the Propeller chip's Spin language. There are two major sections of the programming. One deals with the user interactions and the other is the actual running of the Turing states.

User interactions

  • Loading programs from SD card. Formally, these programs are called states or transition rules.
  • Creating a default tape. Programs often work on a tape that has some number already on it and these can be edited by the user.
  • Utility functions. This includes things like moving the tape to a new position, erasing a bulk section of the tape, and changing the way a program runs or steps through its actions.

Turing Machine Loop

  1. Reads, writes and erases the tape.
  2. Finds the state rule that matches the current state and what was read from the cell.
  3. Updates the feedback display.


Block Diagrams


Click to view larger image



Click to view larger image

Software Download

All of the software I've written for the Turing machine is available for download. Feel free to use all or parts of it as you see fit.

Download The Turing Machine Software

 

The Annotated Turing

A marvelous book exploring Turing's original 1936 paper.

 

Programming the Propeller with Spin

A Beginner's Guide to Parallel Processing walks you through the essential skills you need to build and control devices using the Propeller chip and its parallel processing environment.

 

Lego Turing Machine

If you like Turing machines, check out this Lego version.