A downloadable game for Windows and Linux

Download NowName your own price

Welcome to DLS, the digital logic simulator game.

Further development has been postponed indefinitely.

The current version of the game includes:

  • Truth table levels where your goal is to build a circuit to match a given truth table, under certain restrictions (e.g. limited types of gates).
  • Sequential levels where your goal is to create a circuit to match a given timing graph.
  • Stream levels where you have to build a circuit to process several inputs streams and produce the desired outputs.
  • A powerful sandbox editor where you can build whatever circuit comes to mind! Includes a logic analyzer to debug your circuits, calculate propagation delays and/or find hazards and glitches. Create and organize components into packages and use them to create larger and better circuits.

WARNING: The macOS version has been tested only on Mojave. A few users reported that it doesn't work on newer versions.

Links

DISCLAIMER: This is an alpha version of the game. Although the simulator is capable of handling relatively complex circuits, you might find that certain configurations don't give the expected results. If this is the case, you can send us the schematic in question to find out what's going on and how we can fix the simulator.

Technical

DLS is a time-driven event-based multi-delay 3-value digital logic simulator.

  • Time-driven means that the circuit time is advanced forward based on a user-specified target speed, which is measured in circuit nanoseconds per real second (ns/s). The simulation will always advance to a new state if there are pending signals in the circuit's queue. This means that even unstable or asynchronous circuits can be correctly simulated.
  • Event-based means that a gate is simulated only if one of its inputs changes value. Otherwise the previous output is considered valid and used as input to all connected gates/components.
  • Multi-delay means that each build-in gate/component type has its own propagation delay which is always an integer greater than or equal to 1.
  • 3-value means that in addition to logic levels 0 and 1 there's an extra logic value (U for Undefined) which is used as both Z (high impedance) and X (undefined) signals, depending on its origin.

Third party libraries

DLS uses the following free software (in no particular order):

  1. GLFW - An OpenGL library (http://www.glfw.org/)
  2. bgfx - Cross-platform rendering library (https://github.com/bkaradzic/bgfx)
  3. zange - A single header ANSI C JSON parser (https://github.com/vurtun/zange)
  4. bnet - Message oriented networking library using TCP transport (https://github.com/bkaradzic/bnet)
  5. CrashRpt - A crash reporting system for Windows applications (http://crashrpt.sourceforge.net/)
  6. Lua (https://www.lua.org/)
  7. Icons from Font Awesome - the iconic font and CSS toolkit (https://fortawesome.github.io/Font-Awesome/)
  8. Roboto font (http://www.dafont.com/roboto.font), Anonymous Pro Minus font (http://www.marksimonson.com/fonts/view/anonymous-p...)

We would like to thank their developers for building them and making them public/free.

Credits

Programming, testing: Jim Drygiannakis ( @jdryg)
Graphics/UI: Antonis Drygiannakis
Beta testing (pre v0.16): Sam Swain, Richard Matthias, Josh Callebaut

Release history

v0.17.2 (2022-04-16)

  1. FIX: Crash when opening sandbox editor for the second time.

For details on previous versions, see Releases.txt or the sandbox manual.

StatusCanceled
PlatformsWindows, Linux
Rating
Rated 4.5 out of 5 stars
(30 total ratings)
AuthorMaking Art Studios
GenreSimulation, Puzzle
Tagscircuit, cpu, digital-logic, gates, hdl, logic, nand, schematic, xor
Average sessionA few minutes
LanguagesEnglish
InputsKeyboard, Mouse
LinksHomepage, Twitter

Download

Download NowName your own price

Click download now to get access to the following files:

DLS v0.17.2 Setup x64.exe 25 MB
DLS v0.17.2 (Win x64).zip 2 MB
DLS v0.16.3 Setup x64.exe 16 MB
DLS v0.16.3 (Win x64).zip 3 MB
DLS v0.16.3 (Linux x64).zip 1 MB

Development log