Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 09/07/22 in all areas

  1. So this project isn't 100% complete, and it may be a bit before I complete it, but I wanted to share the code. The premise of this tool is to allow faster low level development doing bare metal programming on a Raspberri Pi 4B, and potentially faster development of an operating system/kernel. It can be a pain to write code, flash it to an SD card on another machine, then transfer it to the Pi4B, or with a USB. These two tools are meant to more streamline early development processes. Sita Sita is the name for a bare bones C-kernel that will facilitate several functions on the Pi4B. This is communicate over the serial port via UART and execute functions. Warning: The make file was written geared towards compiling it on an M1 MacbookAir. Ganapati Is essentially a communication program in rust to communicate with Sita over USB Serial connection via UART. Agni Agni is the name of the protocol I've cooked up to conduct this over. It is pretty basic. I even wrote a little bit of documentation for it in a repo that can be 'compiled' using MDBook. Central Idea Using the the agni protocol, one has 3 basic methods to call. A peek and poke like method from the days of when machine would ran Basic. You can read what is in a memory address and write to a specific memory address. Ideal for verifying things with registers since datasheets are not always as thorough as we will. Then having the ability to stream compiled binary code over and eventually jump to is and begin executing it. Sita would read it in and place it directly into RAM, jumping to the start address of the program. Repositories https://github.com/martintc/Sita https://github.com/martintc/ganapati https://github.com/martintc/Agni
    1 point
×
×
  • Create New...