LogicSimulator
LogicSimulator v1.1
This is a simple circuit simulator made in Java with the JavaFX framework. Build whatever you want in this playground, even your own 8-bit pc (Old screenshot of a 8-bit calculator)
Source code: https://github.com/OrangoMango/LogicSimulator
Features
Building blocks
- Switches (input)
- Lights/RGB Lights (output)
- AND gate
- NOT gate
- Bus
- Tri-state buffer
- 7 Segment display
- Circuits embedding using chips
Simulator features
- Save/Load projects to a readable JSON format
- Save projects as a chip with your custom name and color
- Clear workspace
- Delete gate/wire
- Connect multiple buses together
- Gate label
- Connect/Disconnect pins from the circuit
- Turn global power on/off
- Export circuit to a PNG image
Web version changes
- To load a file, upload it and then click the
Load
button - To load chips into your project (dependencies), upload them by using the second upload button. Once uploaded, you find them in the sidebar on the right.
- Use the slider to scale the UI
- Toggle the
Move
button to move around the scene or to move the gates in your project (instead of the right-click, optional) - Some buttons in the toolbar are replacements for the keys
DELETE
,R
,SHIFT
,CONTROL
andALT
Keyboard usage help
- Use
P
to toggle global power on/off - Use
H
to show/hide the toolbar - Use
DELETE
to delete selected gates from the circuit - Use
Shift
+DELETE
to delete the wires of the selected gates in the circuit - Use
Z
andX
to decrement/increment buses amount when placing a bus - Use
R
to align selected buses - Use
F1
to show/hide pin IDs - Use
Shift
when:- placing a wire to align it
- to place an input pin instead of an output one onto the bus
- to move pins that are on a bus
- Use
Control
when:- placing a wire to delete the previous point
- to define a new selection without unselecting the previous one
- Use
Alt
to place a wirepoint on the position of the nearest wirepoint on the circuit
Mouse usage help
- Use the scroll wheel to scale the canvas
- Use
Left click
:- on pins to enter wire-placing mode
- to place the chosen block from the menu on the right
- to toggle a switch on/off
- to delete a gate if you clicked on the
RM GATE
button - to place a pin on a bus (use
Shift
to toggle between an input/output pin) - to resize a bus horizontally or vertically
- to connect buses together if you clicked on the
CONNECT BUS
button - to delete a wire if you clicked on the
RM WIRE
button (click on 2 pins) - to move a pin of the bus if the
Shift
key is pressed too - to define a selection area or if you click on the background to unselect the current selection
- Use
Right click
:- to interrupt an action like when creating a bus, deleting a gate or a wire
- to move the camera
- to move selected gates or selected wire points
- to open the gate properties menu where you can change the label, remove a pin (if you clicked on a bus pin), and so on
- to look inside a chip
Examples
Individual downloadable project files are available on github.
- 1 bit register
- 4 bit adder
- 4 bit register
- 7 segment driver
- 1 bit adder
- 4 bit ALU
- Buffer
- Bus buffer
- Dabble
- D Flip-Flop
- Double dabble
- NAND gate
- NOR gate
- OR gate
- Set-Reset Flip-Flop
- Set-Reset latch
- XOR gate
Thanks to @SebLague who inspired me to make this :)
Status | Released |
Platforms | HTML5, Windows, macOS, Linux |
Author | OrangoMango |
Genre | Educational |
Tags | circuit-simulator, java, logic-simulator |
Code license | MIT License |
Average session | A few minutes |
Languages | English |
Inputs | Keyboard, Mouse |
Links | Source code |
Download
Download NowName your own price
Click download now to get access to the following files:
logicsim_1.1-1_amd64.deb 36 MB
LogicSim-1.1.msi 37 MB
LogicSim-1.1.pkg 36 MB
LogicSimulator.zip 35 MB
logicsimulator_1.1-1_arm64.deb 33 MB
Development log
- LogicSimulator 1.1Sep 03, 2023
Comments
Log in with itch.io to leave a comment.
oh my gad so good
Thank you very much :)
its really simple and kinda op!