CedarLogic is a digital logic simulator often used in university classroom instruction. It includes all the basic gates, buses, JK and D flip flops, muxes, decoders, and a Z80 micro-processor. At Cedarville University it has been used by Computer Architecture 1 students to build and simulate a full mano-machine.
Please feel free to contribute tickets and pull requests. Currently the only maintainer is @joe-sonrichard.
CedarLogic was developed by Cedarville University professors for classroom instruction. It was released on Source Forge in 2006 where it's enjoyed long-lived popularity, over 20,000 downloads in 2019 alone.
The latest version availible on Source Forge was released in 2011/12 and has been the public face of CedarLogic. That version is still by far the most stable version of CedarLogic. Internally, senior design teams took a couple shots at improving it with added features, unfortunately accompanied by added bugs. The code-base at present is the has their improvements but also the accompanying instabilities.
In February 2020 Cedarville Unversity agreed to move it to GitHub with @joe-sonrichard heading up the project. As of this writing, the chief objective is to fix any known bugs and stabalize the product before considering further improvements.
TODO: Automate build process so this is antiquated (infrastructure as code)
-
Install Visual Studio 2015 or newer. (Tested and works with Visual Studio 2019)
-
Download wxWidgets 2.8.12 source for windows.
-
Run wxWidgets source installer.
-
(Optional) Set windows environment variable
WXWIN
to point to your wxWidgets directory. -
Edit
%WXWIN%\include\wx\msw\setup.h
so thatwxUSE_GLCANVAS
is1
instead of0
. -
Edit
%WXWIN%\src\msw\window.cpp
so that it does not includepbt.h
. -
Open Visual Studio's x86 native tools command prompt (NOT cmd or Powershell!) and run nmake:
cd %WXWIN%\build\msw
nmake /f makefile.vc USE_OPENGL=1 RUNTIME_LIBS=static
nmake /f makefile.vc BUILD=release USE_OPENGL=1 RUNTIME_LIBS=static
-
First, you need to install NSIS.
-
Next, go to the root of the CedarLogic git repo (clone it if you haven't already).
-
Run
mkdir build && cd build
-
Run
cmake .. -A Win32
(If you did not set the windows environment variable earlier, also add-Dwxwin=C:/wxWidgets-2.8.12
to setwxwin
variable to the base of the wxWidgets install path). -
There is now a Visual Studio Solution File in the
build
directory. Open the solution file with Visual Studio. -
Select
Release
from the configuration menu. -
Right click on the
Package
target to create a new installer in thebuild
directory. -
There is now a CedarLogic installer executable in the
build
directory.
Run git tag
to view all the tagged versions of CedarLogic.
NOTE: Old versions of this project are availible on source forge. The latest version on source forge is notable as it was stable though missing some later features.
v2.2017.01.16 - Buggy first release with busses.
v2.2017.01.18 - Fixed bugs.
v2.2017.05.02 - Borken version with lots of good, but enough bad to warrant abandonment.
v2.2018.01.26 - Branch from v2.2017.01.18, stable bus support with an installer and file associations.
v2.3.5 - Patch release to re-enable grayscale printing.