180 lines
5.2 KiB
Markdown
180 lines
5.2 KiB
Markdown
# MatCat BrowserLogic
|
|
|
|
MatCat BrowserLogic https://www.logic.parts/ is a logic simulator written purely in HTML5 / Javascript using 2D Canvas.
|
|
|
|
## Status
|
|
|
|
This simulator is in extremely early stages, it is not even Alpha at this point but early development. Outside contribution is welcome, please contact me in #LogicParts on Freenode IRC network.
|
|
|
|
## License
|
|
|
|
To be decided, but at this moment this code is open source and free to use for non-commercial uses.
|
|
|
|
LZ-String, Copyright 2013 pieroxy under MIT license https://github.com/pieroxy/lz-string/blob/master/LICENSE
|
|
|
|
## Changelog
|
|
|
|
### 0.4.8
|
|
|
|
* Fixed bug where disconnects where not propagating properly
|
|
|
|
### 0.4.7
|
|
|
|
* Added LZW compression to save files (can be disabled on save)
|
|
* Settings are now saved persistently
|
|
* Added a basic help window, accessible via the top menu Help->Help, or pressing F1.
|
|
* Hovering over an output will now hilight the links from it
|
|
* Fixed a bug where keybindings could conflict while typing in textboxes
|
|
|
|
### 0.4.6
|
|
|
|
* Added a new keybinding system, and added many keyboard shortcuts (look in menu)
|
|
* Fixed a bug where a button would stay on off the mouse was moved away from it while being eld down
|
|
* Fixed a bug where you could link from elements with no outouts
|
|
|
|
### 0.4.5
|
|
|
|
* Keypad now supports either Switch, or Button mode for Function keys, also has Clear output that pulses for 100ms when Clr is pressed
|
|
* Changed max input count for basic elements to 64 (from 12)
|
|
|
|
### 0.4.4
|
|
|
|
* Fixed a delinking bug
|
|
* Fixed a bug where selection only worked in certain directions
|
|
|
|
### 0.4.3
|
|
|
|
* There is now multi-selection, including movement, deleting, disconnecting, etc.
|
|
|
|
### 0.4.2
|
|
|
|
* Added Hex keypad with 4 bit output, also has 3 function keys
|
|
|
|
### 0.4.1
|
|
|
|
* Fixed a signal propogation bug with IC's
|
|
|
|
### 0.4.0
|
|
|
|
* You can now pan the work area, hold ctrl key while mouse dragging an empty area.
|
|
* Right Click Menu
|
|
* If an item is selected you can delete or disconnect them
|
|
* Top menu
|
|
* New / Open / Save moved to File menu
|
|
* You can now disable connection drawing, or put them above or below elements in View menu
|
|
* There is now a pan to center feature in View menu
|
|
* Create IC has been moved to Tools menu
|
|
* Help menu -> About opens the Welcome Window
|
|
* Save dialog
|
|
* Fixed various small bugs
|
|
|
|
### 0.3.10
|
|
* Added BCD and Decimal options to the 4 bit output display, as well as bit labels in inputs
|
|
|
|
### 0.3.9
|
|
|
|
* Added grid alignment, hold CTRL key while moving to get pixel level positioning.
|
|
* Fixed property restoration issue with labels on loading a save
|
|
|
|
### 0.3.8
|
|
|
|
* Added labels! You can specify the text, size, and color
|
|
|
|
### 0.3.7
|
|
|
|
* Added 4 bit display! Currently shows hex format
|
|
* Fixed a bug with flip flop save states for connections
|
|
|
|
### 0.3.6
|
|
|
|
* Fixed a bug where flip flops weren't firing output changes when only !Q changed.
|
|
|
|
### 0.3.5
|
|
|
|
* Fixed a bug where newly linked objects weren't being polled to the proper output
|
|
|
|
### 0.3.4
|
|
|
|
* Added Flip-Flops! There are 4 to choose from, JK, SR, D, and T!
|
|
|
|
### 0.3.3
|
|
|
|
* Fixed a bug that crashed the engine when attempting to place an IC with no inputs
|
|
|
|
### 0.3.2
|
|
|
|
* Added IC Element, allows for converting a logic design to an IC for use in designs.
|
|
* Added IC Input and IC Output which allow for external connections when a design is used as an IC
|
|
* Added a New button for creating a new design
|
|
|
|
### 0.3.1
|
|
* Toolbox is now dynamically created and categorized
|
|
* The delete button is gone for now (use delete key on keyboard), it will come back when toolbar is added.
|
|
|
|
### 0.3.0
|
|
* Saving / Loading of designs
|
|
* New Element: Buffer, allows for construction of circuits that would otherwise be recursive
|
|
* Added pulse count to the delay block printout
|
|
* Fixed grid draw bug
|
|
|
|
### 0.2.12
|
|
* Fixed floating active link when deleting an element while linking
|
|
* Fixed the delay element so that it properly buffers all input pulses
|
|
|
|
### 0.2.11
|
|
* Added Delay element
|
|
|
|
### 0.2.10
|
|
* New elements will now do overlap detection on placement
|
|
* Newly placed elements will now be selected
|
|
|
|
### 0.2.9
|
|
* Active linking is now drawn with quadratic curves
|
|
* Links can now be deleted by simply trying to link the same link again
|
|
* Added pulse element
|
|
* Clock element now shows countdown in ms to next state change
|
|
|
|
### 0.2.8
|
|
* New elements now spawn in the center
|
|
* Added button element
|
|
* Changed switch graphical look
|
|
|
|
### 0.2.7
|
|
* Added welcome screen window
|
|
|
|
### 0.2.6
|
|
* Added background grid
|
|
* Logic elements now have proper logic shapes
|
|
|
|
|
|
### 0.2.5
|
|
* Fixed clock sync issue when disabled
|
|
* Added recursive detection on logic to prevent runaway oscillations
|
|
* Fixed click alignment on single input elements
|
|
|
|
### 0.2.4
|
|
* Brought connections to foreground to make them more obvious in less then ideal layouts
|
|
* Resized logic elements and positions I/O better
|
|
* Logic elements will now grow or shrink in size based on I/O
|
|
* Made selection box transparent
|
|
|
|
### 0.2.3
|
|
* Fixed bug where timer isn't removed when clock is deleted
|
|
|
|
### 0.2.2
|
|
* Fixed freaking out inputs on some input values
|
|
* Quadratic CURVES! Links now look MUCH nicer :)
|
|
|
|
### 0.2.1
|
|
* Fixed input property constraints on elements
|
|
* Added NOT gate
|
|
|
|
### 0.2.0
|
|
* Switched to a dark theme
|
|
* Added left hand toolbar
|
|
* Linking can now be done by clicking on an output then an input
|
|
* Added new element: Clock
|
|
|
|
### 0.1.0
|
|
Initial public release.
|