selfie
scamp-cpu
| selfie | scamp-cpu | |
|---|---|---|
| 21 | 12 | |
| 2,505 | 296 | |
| 0.1% | 0.0% | |
| 9.4 | 8.4 | |
| 6 days ago | over 2 years ago | |
| Jupyter Notebook | Slash | |
| BSD 2-clause "Simplified" License | The Unlicense |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
selfie
- A tiny hand crafted CPU emulator, C compiler, and Operating System
-
Project Oberon the Design of an Operating System, a Compiler, and a Computer Pdf
this sort of exists at https://github.com/cksystemsteaching/selfie
> Selfie is a self-contained 64-bit, 12KLOC C implementation of: (...) a tiny (...) subset of C called C Star (C) (...) to a tiny (...) subset of RISC-V called RISC-U[;] a[n] (...) emulator (...) that executes RISC-U code[;] (...) a (...) hypervisor (...) that provides RISC-U virtual machines*
so they have an instruction set architecture, a compiler, and an operating system, though it's much simpler than xv6. because the instruction set is a subset of risc-v you can run its code on actual risc-v hardware (or qemu-system-riscv), but presumably you could also design risc-u hardware in verilog that was simpler than a full implementation of rv64i with whatever extensions the hypervisor needs
- Best book on writing an optimizing compiler (inlining, types, abstract interpretation)?
- Selfie: An educational platform for teaching systems engineering
- An educational software system of a tiny self-compiling C compiler, a tiny self-executing RISC-V emulator, and a tiny self-hosting RISC-V hypervisor.
- Selfie: An Educational Platform For Teaching Systems Engineering
scamp-cpu
-
500 Lines or Less – Writing a useful program in fewer than 500 line code – AOSA
Re the text editor, when I was writing an editor for my homemade CPU I used the one from this tutorial: https://viewsourcecode.org/snaptoken/kilo/index.html - it is 1000 lines of C.
I have diverged a bit from the tutorial because I didn't want syntax highlighting and I really wanted vi-style keybindings. Mine is at https://github.com/jes/scamp-cpu/blob/master/sys/kilo.sl (in my made-up programming language).
-
-🎄- 2021 Day 8 Solutions -🎄-
I made the computer myself: https://github.com/jes/scamp-cpu/
-
🎄 AoC 2021 🎄 [Adventure Time!]
PROJECT LINK: Solutions GitHub - CPU GitHub - YouTube
- Scamp CPU: A homebrew 16-bit CPU with a homebrew Unix-like-ish operating system
- A homebrew 16-bit CPU with a homebrew Unix-like-ish operating system
-
Designing a CPU for Advent of Code
In case you're interested, there's more about this project in the github repo: https://github.com/jes/scamp-cpu/ and on my blog: https://incoherency.co.uk/blog/tags/cpu.html
-
Scamp – a homebrew 16-bit CPU
This is really cool and unique. I poked around a bit, and the kernel is vaguely POSIX like, but written in a homegrown language with a compiler written in Perl[1].
[1] https://github.com/jes/scamp-cpu/blob/f260f52d950be90c2279f5...
-
My homebrew CPU is alive!
Actually, I just found this! That's pretty much what I was looking for. That's what I would have linked if it had been me posting. :) This looks like a really interesting computer project!
What are some alternatives?
oscam-patched - Open Source Cam Emulator
coollang-2020-fs - Compiler for a small Scala subset
ld - LambdaDelta
advent-of-code - My Advent of Code solutions through the years - mostly JS
gifDisco - It takes a png and builds a disco-gif version