https://github.com/rhinodevel/rhinogator
Digital logic circuit simulator.
https://github.com/rhinodevel/rhinogator
digital-logic digital-logic-simulator
Last synced: 3 months ago
JSON representation
Digital logic circuit simulator.
- Host: GitHub
- URL: https://github.com/rhinodevel/rhinogator
- Owner: RhinoDevel
- Created: 2023-12-11T19:52:58.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-10T15:52:30.000Z (over 1 year ago)
- Last Synced: 2025-03-13T01:42:20.433Z (7 months ago)
- Topics: digital-logic, digital-logic-simulator
- Language: C#
- Homepage:
- Size: 213 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# RhinoGator
## About
This is a digital logic circuit simulator.## Goals
- Implementing different digital logic circuits in source code, based on some simple basic logic elements, only (no cheating!). The final goal is implementing the whole SAP-1 (Simple As Possible computer) this way, or at least parts of it.
- Understanding more complicated digital logic circuits by coding the simulation and making sure that they work before building them with hardware.
- Be compatible with Linux and Windows operating systems.
- Testing the productivity of using Visual Studio Code with Linux for development of a C# .NET console application (instead of using Visual Studio with Windows).
- Maybe add support for text-based input files (e.g. JSON) describing the digital logic circuits to be simulated instead of doing that statically in source code.## How to use
- Select one of the example classes (or create your own) and use it in `Program.cs`.
- Run the application with .NET at the console/terminal.
- The UI depends on the example selected, the controls on the example and the game loop, see `GameLoop.cs`.## Sources
The page numbers mentioned in code and the implemented logic elements (basic and so-called assembled elements) are from the book Digital Computer Electronics by Albert Paul Malvino and Jerald A. Brown.