# misprit7/computerraria

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/misprit7-computerraria).**

3,840 stars · 56 forks · Rust · MIT

## Links

- GitHub: https://github.com/misprit7/computerraria
- Homepage: https://youtu.be/zXPiqk0-zDY
- awesome-repositories: https://awesome-repositories.com/repository/misprit7-computerraria.md

## Topics

`logic-gates` `risc-v` `riscv` `terraria` `terraria-mod`

## Description

Computerraria is a digital logic circuit simulator and computer architecture educational tool. It provides a sandbox environment for building and testing functional computer systems by connecting modular logic gates and electronic wires.

The project serves as a RISC-V architecture simulator that executes RV32I machine code using virtualized hardware components. It includes a virtualized CPU toolchain that uses containerized systems to compile source code into binary formats compatible with these custom processor architectures.

The system covers digital logic circuit design and RISC-V ISA simulation, allowing for the verification of CPU compliance by comparing execution results against a reference simulator. It also includes capabilities for uploading and controlling binary files through a command line wrapper.

## Tags

### Graphics & Multimedia

- [Logic Circuit Simulation](https://awesome-repositories.com/f/graphics-multimedia/logic-circuit-simulation.md) — Provides an interactive environment to simulate the behavior of digital logic gates and wiring.

### Education & Learning Resources

- [Computer Architecture](https://awesome-repositories.com/f/education-learning-resources/computer-architecture.md) — Serves as a visual educational tool for observing how instructions translate into electronic signals in a simulated CPU.
- [Computer Systems Education](https://awesome-repositories.com/f/education-learning-resources/computer-systems-education.md) — Provides an educational environment for learning computing fundamentals by building a full hardware stack from logic gates.

### Hardware & IoT

- [RISC-V Hardware Emulation](https://awesome-repositories.com/f/hardware-iot/embedded-robotics/hardware-in-the-loop-simulators/binary-emulators/hardware-accelerated-emulators/risc-v-hardware-emulation.md) — Simulates RISC-V hardware architectures to execute and verify RV32I machine code binaries.
- [RISC-V Instruction Virtualization](https://awesome-repositories.com/f/hardware-iot/risc-v-instruction-virtualization.md) — Simulates the RISC-V instruction set by mapping machine code operations to virtual hardware operations.

### Operating Systems & Systems Programming

- [Machine Code Execution Engines](https://awesome-repositories.com/f/operating-systems-systems-programming/machine-code-execution-engines.md) — Runs low-level machine instructions through simulated logic components to perform general-purpose computation. ([source](https://cdn.jsdelivr.net/gh/misprit7/computerraria@main/README.md))

### Software Engineering & Architecture

- [Hardware Building Blocks](https://awesome-repositories.com/f/software-engineering-architecture/reusable-component-architectures/hardware-building-blocks.md) — Builds complex computational systems by linking independent, reusable electronic building blocks within a sandbox.

### Development Tools & Productivity

- [Containerized Toolchains](https://awesome-repositories.com/f/development-tools-productivity/integrated-development-toolchains/containerized-toolchains.md) — Ships a containerized toolchain to ensure consistent compilation of source code for the custom virtual processor.

### DevOps & Infrastructure

- [Toolchain Virtualization](https://awesome-repositories.com/f/devops-infrastructure/cicd-pipeline-automation/core-build-engines/build-tooling/build-pipeline-extensions/production-build-apis/production-builds/environment-consistent-builds/toolchain-virtualization.md) — Uses virtualized environments to provide a consistent toolchain for compiling code into custom processor binaries.

### Programming Languages & Runtimes

- [Source-to-Binary Compilation Toolchains](https://awesome-repositories.com/f/programming-languages-runtimes/source-to-binary-compilation-toolchains.md) — Provides a toolchain that transforms source code into executable binaries compatible with the custom virtual processor.

### Testing & Quality Assurance

- [Compliance Verifiers](https://awesome-repositories.com/f/testing-quality-assurance/functionality-verifiers/compliance-verifiers.md) — Validates that the simulated CPU conforms to the RISC-V technical specification through automated tests. ([source](https://cdn.jsdelivr.net/gh/misprit7/computerraria@main/README.md))
- [Reference Implementation Validation](https://awesome-repositories.com/f/testing-quality-assurance/reference-implementation-validation.md) — Validates simulated processor outputs by comparing them against a trusted software reference implementation.
