Skip to content
forked from clbx/Cosmic

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

License

Notifications You must be signed in to change notification settings

cyrex562/Cosmic

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Cosmic

Cosmic Logo


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 very interesting project
  • A Proof of Concept
  • Kinda cool
  • A good way to learn assembly and how processors work
  • Fun to play with
  • Made by two guys learning as they went along

What isn't Cosmic

  • An optimized, properly designed processor
  • Free of mistakes or beginner errors
  • Something to base a serious project off of

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.


Documentation

Installation Instructions

Linux

Install SDL2 using your distros package manager

cd Cosmic
cd src
make

Mac

Install SDL2

brew install sdl2

Then make

cd Cosmic
cd src
make

Windows (Unsupported)

Windows requires MSYS2/MinGW Install the following packages:

pacman -S git mingw-w64-x86_64-toolchain mingw64/mingw-w64-x86_64-SDL2 mingw64/mingw-w64-x86_64-SDL2_mixer mingw64/mingw-w64-x86_64-SDL2_image mingw64/mingw-w64-x86_64-SDL2_ttf mingw64/mingw-w64-x86_64-SDL2_net mingw64/mingw-w64-x86_64-cmake make

Add MinGW to your Path

cd Cosmic
cd src
make

/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

  • gl3w A OpenGL core loader. This is not under a license.

  • 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.

About

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

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 77.3%
  • C 22.4%
  • Other 0.3%