bespokeasm
alek
Our great sponsors
bespokeasm | alek | |
---|---|---|
5 | 1 | |
19 | 0 | |
- | - | |
6.2 | 5.8 | |
2 days ago | about 1 year ago | |
Python | Python | |
GNU General Public License v3.0 only | GNU General Public License v3.0 only |
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.
bespokeasm
-
Custom 8-bit van Neumann CPU heavily influenced by Ben Eater's design
Cool. If you want to upgrade from your excel/python assembler, you should be able to create a custom ISA with my assembler, BespokeASM: https://github.com/michaelkamprath/bespokeasm
-
slu4's Minimal CPU Build
Of course, I did what I do and I added support for this computer in my BespokeASM customizable assembler. This allowed me to write some larger projects than slu4's "minimal assembler" easily enabled. And with that, I ported my 32-bit primes calculation code to the slu4 Minimal CPU. What I found fascinating is that this code ran about the same speed (the PUTEY-1 is a small bit slower) in terms of how long it takes to find a prime value as the code runs on my PUTEY-1 breadboard TTL running at about one fourth the clock speed (480 KHz vs 1.8432 MHz). I attribute that to the more sophisticated ALU I built in my TTL CPU that does bit shifting (left and right) and value comparisons directly in hardware. Of course, I understand that the Minimal CPU's whole goal is to be minimal, I just still found this comparison interesting.
- I updated my customizable assembler to generate syntax highlighting extension for Visual Studio Code base on your custom instruction set. It also now support syntax for 5 addressing modes and more. With all the advanced TTL CPUs people are making here, I thought some might find this useful.
-
My updated 16 bit memory + updated control logic + memory map controller + 8 bit instruction register is ready to be integrated into my breadboard CPU.
I took have worked on and developed a compiler that is actually read to encode stack operation including indirect value referencing with an address offset to get the mov a, [sp+2] type instructions. You can check it out here: BespokeASM. I have some more development to do with this assembler, notably around macros, includes, and other assembler directives, but the basics for the various addressing modes are in there and the ability to define your instruction set through configuration.
- I was wanting an assembler I can use with my breadboard CPU, but the only one that allowed custom ISAs is Windows only. So, I created my own assembler with Python for custom ISAs, and included a configuration file for the original instruction set of Ben Easter's SAP-1. Still a bit rough, but usable.
alek
-
ALEK - Assembly Learning Environment for Kids
https://github.com/cfeck/alek is the result. Compared to some other CPU simulators I found, this one can also be used to explain some elementary graphics.
What are some alternatives?
customasm - 💻 An assembler for custom, user-defined instruction sets! https://hlorenzi.github.io/customasm/web/
pwntools - CTF framework and exploit development library
bronzebeard - Minimal assembler and ecosystem for bare-metal RISC-V development
PeachPy - x86-64 assembler embedded in Python
eater-sap-1-improvements - Improvements and modifications made to the Ben Eater SAP-1 breadboard computer
arl - lists of most popular repositories for most favoured programming languages (according to StackOverflow)
Minimal-UART-CPU-System - Legacy: TTL-only CPU featuring UART I/O, an expansion port, 512KB SSD at up to 10MHz clock speed
gdb-dashboard - Modular visual interface for GDB in Python
first_nes - Create your own games for the Nintendo Entertainment System! This "starter" game is easily extensible for your own projects. Includes references.
qros-builder-vid - Builds KolibriOS from qr codes embedded in a video and launches the small assembly written OS in qemu.