All Projects → clbx → Cosmic

clbx / Cosmic

Licence: mit
A 𝒔𝒕𝒆𝒍𝒍𝒂𝒓 simulated 8-bit computer architecture

Projects that are alternatives of or similar to Cosmic

Exandroidnativeemu
An improved version of AndroidNativeEmu,Allow running android elf on PC
Stars: ✭ 264 (+172.16%)
Mutual labels:  emulation, simulation
Awesome Emulators Simulators
A curated list of software emulators and simulators of PCs, home computers, mainframes, consoles, robots and much more...
Stars: ✭ 94 (-3.09%)
Mutual labels:  emulation, simulation
Shadow
Shadow is a unique discrete-event network simulator that runs real applications like Tor, and distributed systems of thousands of nodes on a single machine. Shadow combines the accuracy of emulation with the efficiency and control of simulation, achieving the best of both approaches.
Stars: ✭ 769 (+692.78%)
Mutual labels:  emulation, simulation
awesome-edge-computing
A curated list of awesome edge computing, including Frameworks, Simulators, Tools, etc.
Stars: ✭ 149 (+53.61%)
Mutual labels:  simulation, emulation
Higan Verilog
This is a higan/Verilator co-simulation example/framework
Stars: ✭ 35 (-63.92%)
Mutual labels:  emulation, simulation
Psrealvehicle
Plugin for Unreal Engine 4 with simple force-driven vehicle simulation
Stars: ✭ 92 (-5.15%)
Mutual labels:  simulation
Scrimmage
Multi-Agent Robotics Simulator
Stars: ✭ 93 (-4.12%)
Mutual labels:  simulation
Cake Slayer
🍰🔪 Architecture of Haskell backend applications
Stars: ✭ 92 (-5.15%)
Mutual labels:  architecture
Cpm8266
Z80-CP/M2.2 emulation on ESP8266 NONOS SDK + the NoSDK from cnlohr
Stars: ✭ 91 (-6.19%)
Mutual labels:  emulation
Paper Code
对一些好的技术文章结合自己的实践经验进行翻译、举例说明等或自己的经验分享。主要包括架构设计、模式设计、模型设计、重构等。
Stars: ✭ 94 (-3.09%)
Mutual labels:  architecture
Vita3k
Experimental PlayStation Vita emulator
Stars: ✭ 1,329 (+1270.1%)
Mutual labels:  emulation
Cleanarchitecture
Android Kotlin Clean Architecture
Stars: ✭ 94 (-3.09%)
Mutual labels:  architecture
Architecture.wechat Tencent
互联网公司架构: 微信技术架构, 腾讯技术架构
Stars: ✭ 1,315 (+1255.67%)
Mutual labels:  architecture
Webots
Webots Robot Simulator
Stars: ✭ 1,324 (+1264.95%)
Mutual labels:  simulation
Aws Lambda Vpc Nat Examples
Example of setting up AWS lambda function with VPC and NAT
Stars: ✭ 92 (-5.15%)
Mutual labels:  architecture
Easymvp
A full-featured framework that allows building android applications following the principles of Clean Architecture.
Stars: ✭ 1,312 (+1252.58%)
Mutual labels:  architecture
Measureit arch
An expansion of Antonio Vazquez's MeasureIt addon to add features to create Architectural Drawings in Blender 2.8
Stars: ✭ 93 (-4.12%)
Mutual labels:  architecture
Software Architect Cheat Sheet
Stars: ✭ 95 (-2.06%)
Mutual labels:  architecture
Covid19 Sir
COVID-19 SIR model estimation
Stars: ✭ 94 (-3.09%)
Mutual labels:  simulation
Mesa
Mesa is an agent-based modeling framework in Python
Stars: ✭ 1,319 (+1259.79%)
Mutual labels:  simulation

Cosmic

Cosmic Logo


CodeFactor GitHub repo size

Cosmic is a fully simulated computer architecture that provides a full environment to use the Cosmic Processor, specialized devices, ROM, RAM, graphics, and more. The cosmic processor can also be used on a Raspberry Pi to interface with real-world devices. The cosmic system is all entirely accessible in a rich GUI interface that allows for full customization of the system environment and code execution.*

Cosmic GUI

Cosmic is designed to act similar to a real, physical chip but take advantage of it being software-based and leaving some of the nuances of the physical world behind.*

With an instruction set that makes sense (and is fun), and simple memory-mapped I/O, Cosmic is an excellent "chip" to write for, using the cosmic assembler.*

* in deveopment

What is Cosmic?

  • A great educational tool to teach how processors work and assembly language
  • A very interesting project
  • A Proof of Concept
  • Kinda cool
  • Fun to play with

Cosmic is the Senior Project for Clay Buxton (@clbx) and Kevin Carman (@carmank) at Elizabethtown College. All academically required reports and documentation is in the /doc folder.

Special thanks to @Gwarks, who did a lot of base work on the graphics.


Documentation

Installation Instructions

Be sure to clone recursively, Cosmic uses git submodules

git clone --recursive https://github.com/clbx/Cosmic

If you have already cloned:

git submodule init
git submodule update

Linux

Install SDL2 using your distributions package manager

make

macOS

Install SDL2 using brew. Get brew here if you don't already have it.

brew install sdl2
make

Windows

A pre-compiled binary can be downloaded from the release page. You will still need to install MinGW and SDL2 Be sure to add both MinGW and SDL2.dll to your path

Compilation Instructions:

Get Chocolatey if you don't have it already, it helps for installing tools

Install MinGW choco install mingw

Install make choco install make

Download SDL2 Development Library

Untar SDL to the MinGW install directory

make

Make sure any missing .dll's are in your path

Assembler

The assembler is written in Python, so if you plan on assembling anything for Cosmic, Python 3 is required


/lib contains some included software:

  • ImGui is a GUI library used for the interface, along with a slightly modified memory editor addon. This is under the MIT License and the license file is included accordingly

  • ImTui A library that takes ImGui and puts it into a terminal.

  • gl3w A OpenGL core loader. This is under the unlicense.

  • catch2 is used for testing. This is under the BSL Software License

SDL2 is also required to run Cosmic.

Cosmic is under the MIT License, feel free to use any part of it, but if you do please include the license file and a link to this repository.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].