Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Digital Logic Sim

​A minimalistic digital logic simulator · By Sebastian Lague

Frequently Asked Questions Sticky

A topic by Sebastian Lague created 98 days ago Views: 4,103 Replies: 24
Viewing posts 1 to 12
Developer (5 edits) (+3)

A few frequently asked questions I've seen (will add more later). Last updated for version 2.1.6

  • Where are the AND and NOT chips?
    • In this version of the simulation you begin with only a NAND chip instead. However, both AND and NOT (and everything else) can be built from this.
  • How to make displays show up on a chip?
    • If you have placed some displays in your chip, you can go to Save > Customize, and from there you can position and scale them however you want. These will then show up when you place that chip in the future.
  • What happens in a single simulation step?
    • The simulation is very simplified compared to reality, and works roughly like this:
    • The input signals travel (instantaneously) along the wires to each chip. Each chip will wait until all its inputs have been received (not counting disconnected pins) before the signal continues. This means that for combinational chips (ones without outputs that loop back into their own inputs), all logic will be fully computed in a single step.
    • However, in the case of sequential chips (where a chip’s output feeds back — directly or indirectly — into its own input) the signal will have to move forward without yet knowing what that input will end up being. This means that it may require multiple simulation steps for the output to stabilize — especially when more than one loop exists, as there’s some randomness involved then in which signal will ‘arrive’ back first. You should test that your clock speed is slow enough for the chip to operate consistently.
  • How to change the clock speed?
    • In the prefs menu, you set how many simulation ticks should pass between each tick of the clock.
  • Will I keep my projects if I upgrade to a new version?
    • Yes, within version 2.x. Older versions of the simulation (v0 and v1) are not compatible.
  • How to share a project?
    • There’s no built-in way to do this currently, but you can do it manually by going to the save data directory, and uploading the folder for your project (or store a project you’ve downloaded there). On windows and linux the save directory can be accessed with the shortcut Ctrl+Alt+Shift+O inside the game. (There’s currently a bug on mac, see here).
  • Game not opening/blank screen?
    • The game currently requires ‘shader model 5’, so I believe it should work if you have at least: DirectX11, OpenGL 4.3, or Metal 2. If it doesn’t work despite meeting these requirements, please let me know!
  • Virus warning?
    • I haven’t gone through the process yet of ‘signing’ the game, so it’s normal for your computer to be suspicious (wacatac trojan is the most common false-positive). The game is, however, safe to run — if you’re happy to take my word for it. Otherwise, you can take a look at the source code for the game over here (and create your own build if you like).
  • Steam version?
    • Maybe in the future once I’ve ironed out some kinks!
  • I found a bug / have a suggestion
    • The best place to post these is on the github issues page.
  • Controls and keyboard shortcuts?
    • Camera
      • Scroll wheel or Alt + Right Mouse Drag to zoom
      • Middle Mouse Drag or Alt + Left Mouse Drag to pan
      • Ctrl + R to reset the view
    • General
      • Ctrl + G to toggle grid
      • Right Click for context menu (on chips, wires, and pins)
      • Left Mouse Drag to box-select
      • Ctrl+Z and Ctrl+Shift+Z to undo/redo
      • Ctrl+Space to pause/un-pause the simulation 
        • Space while paused to advance a single step.
    • Chip
      • Hold Ctrl to snap to grid (while placing)
      • Hold Shift to place multiple copies (while placing)
      • Hold Shift to constrain movement to a straight line (while moving)
      • Shift + D to duplicate selected chips
(+3)

This is useful info, thanks. Another shortcut I stumbled across:

  • Ctrl+R to center the screen on the chip

It might be useful to eventually add all this info in the 'About' section on the main menu.

Developer(+1)

Ah I forgot about that one, thanks. And yeah I should get around to putting something in that menu.

(1 edit)

If you try to delete an input by putting it in the bottom, it's still there! You cant see it.

(1 edit) (-13)

Thanks for your info updates

Please,please, check your email 

(+6)

Delete this. You've already tried contacting him and also made two topics about contacting him.  Don't follow him around the forums badgering him on unrelated posts, too. 

(-16)

Mind your own business 

(1 edit) (-3)

fire

(+4)

If you want to contact the developer for fixing a bug or submitting a feature request, go to the GitHub page, and submit an issue there. Dont contact the dev to just fix a bug.

(+1)(-1)

Ok, thanks 

(1 edit)

Is there a “proper” way to make a constant-on chip? Or is it just a disconnected NOT? That didn’t work in 1.X.

Developer

You can just do disconnected not for now. I will add proper consts in a future update

also if you have just selected multiple chips, you can hold control and scroll to space them

Actually, it's SHIFT+scroll. CTRL+scroll still scrolls the screen (for me, anyways)

You can find keybinds and tutorials on the unofficial DLS Docs, partner of the unofficial DLS Discord server

can the wires be roundy-like from the v1 version? i wanna make my new project a little more clean and fancy

In the very FAQ that you are replying to, it says how to make suggestions...

how do i build? ive been stuck on build other chips, i saw in the first video theres a "create" button, but i cant seem to find it here..

ctrl+S promts you to save and you can enter a name and ctrl+L opens the library

thats how you make chips

thankyouu

Can you add a checker for disconnected? My display keeps treating it as 0 but i want to turn off the display then.

What? Just add a pin that turns on the display when the pin is set to 1. If its disconnected then it should naturally be 0.

(1 edit)

Hi, been wondering where savestates are on Linux and Windows (trying to send save  data from linux vm to windows main pc)
Solved: 
C:\Users\NAME\AppData\LocalLow\SebastianLague\Digital-Logic-Sim\Projects       -      on Windows

/home/NAME/.config/unity3d/SebastianLague/Digital-Logic-Sim/Projects      -      on Linux (Specifically run on Linux Mint)

I downloaded the linux version but I'm not sure how to run the app. Any instructions?