This project is a simulator for a particular machine configuration built with DEC Laboratory Digital Modules.
The simulator is running at osteele.github.io/ffmachine/. You can build and simulate your own machine configuration there and see machines that others have built.
This simulator simulates the following modules:
- Type 110 Diode Gate module, consisting of two diode gates and two clamped load terminals
- Type 201 Flip-Flop module, consisting of one flip-flop, two inverters, and three ground terminals
- Type 401 Clock module
- Type 5402 Clock module
- Type 602 Pulse Amplifier module, consisting of two pulse amplifiers, two inverters, and three grounds
References:
- DEC Digital Logic Handbook (PDF), 2nd edition
- DEC Digital Logic Handbook (PDF), 3nd edition
- Type 201 Flip Flop at the Computer History Museum
- Type 3602 Pulse Amplifier at the Computer History Museum
- PDP-1, including images and talks, at the Computer History Museum. (The PDP-1 was also built from these modules.)
- Install npm:
- From here.
- Or
apt-get install nodejs
(Linux) - Or
brew install npm
(Mac OS X with Homebrew installed). cd
to this (the project) directory.- Run
npm install
.
- Run
grunt
on the command line. This starts a server at localhost:8000. - Visit http://localhost:8000/ to see a list of documents.
grunt
with no arguments copies / transcodes sources into the build
directory, runs a server at port 8000
,
watches files, and copies / transcodes them again if they change.
grunt build
forces a re-build and copy of all files from app
into the build
directory.
grunt server
runs a LiveReload server. Install and activate the LiveReload extension (Safari, Chrome, or Firefox) to reload the web page when the sources are changed.
- Create and configure the
release
directory:git clone -b gh-pages git@github.com:osteele/ffmachine.git release
. You only need to do this once. - Run
grunt deploy
. - Visit http://osteele.github.io/ffmachine/.