Circuits by Nicholas Duchon

This is a program being developed by me to allow students to draw and examine logic circuits with flip-flops.


  • Open source, written in Java
  • Runs as either an applet or an application
  • Uses plain text files to save and restore the state of the simulation
  • Prints the simulation
  • Supports animation of minterm inputs, flip-flop clock ticks, and toggling input and flip-flop values
  • Other features will be added as I have time

  • Video Introduction


Run Applet
Newer versions only run
as an application
(inlcudes links to source code
and a longer documentation file)
Oct 23, 2018
See the help menu selection
included within the jar file
Uses Java 8
  • Fixing features that I had in mind earlier
  • New data file format and different classes
  • Should be compatible with earlier data files
Jun 9, 2017
See the help menu selection included within the jar file
  • Handles extended Lesson menu elements.
Jun 5, 2017
See the help menu selection
included within the jar file Require Java 7, perhaps 8?
  • boxes internal circuitry can be duplicated
May 18, 2017
See the help menu selection
Included within the jar file
Requires Java 7 (I think)
  • boxes support internal circuitry
  • controls related to boxes somewhat different than earlier versions
  • input next can be top/down or bottom/up - use Sort button
  • duplicate box only does shallow copy - I would like to fix this in the next version
  • many minor issues addressed
  • Only runs as an application
  • Cleaned up an issue running on PC's
As previous versions

Still experimental
  • supports internal structure of box gates
    triple click to bring up window
  • Uses Java version 7 (I hope).
Feb 17, 2008
Run the applet with basic logic circuit examples

Run the applet with test examples

Run with Mano Lessons

Run with Carpinelli Lessons
Installation Notes by JackHirschfelder

Get the jar file

source code

Used to prepare a FSM

Help File
See Lessons in Program

Source for Lessons in Program

Suggested problems

Requires Java version 5.0 -

  • Added group move, document awareness, task gates
  • Added Lessons, including allowing links to other Lessons
  • Added PLA and Box components
  • Same file format as v5, uses tear-off menus
  • Simplified the Lessons menu file format.
  • Added the basic lessons.
  • Cleaned up some problems.
  • Added lessons for Carpinelli and Mano texts
  • Will send image to clipboard when run as an application
  • Added arrows to drawings.
  • Can color comment backgrounds.
  • Undo new component and move using cntrl-Z
  • Some boxes resize to label
Mar 22, 2005
Requires Java version 1.4
The file format has changed again, v4 and v3 files won't work here.
This version has comment gates, and allows labels with spaces
Print scales and adds date to output
Add dots is now active.
Mar 14, 2005
Requires Java version 1.4
Cleared up some issues: printing, remove indeterminant states,
changed some colors, added labelling, I/O preserves labels,
so data files from v3 won't work with this version.
Right-click on component to change label.
Add Dots is not active yet.
Requires Java version 1.4
Added  flip-flops, useful documentation
The examples may be copied into the Text IO windows and then loaded.
Figures and Problems are from Mano, 3rd edition.
Added floating menus, printing, and text I/O
First working version, doc mostly requirements