Mar 22, 2021
Mu can now read from an ATA (IDE) disk drive on Qemu.
https://github.com/akkartik/mu/tree/main/shell#readme
It wouldn't have been possible without the lovely folks over on #osdev. And the inspiration of ColorForth (https://merveilles.town/@akkartik/105906716550232992), though I still don't understand how that driver works.
permalink
* *
Mar 17, 2021
A driver for IDE hard disks in Forth
https://colorforth.github.io/ide.html
It seems to be using https://wiki.osdev.org/ATA_PIO_Mode which transfers data to disk one byte at a time. Super inefficient. And yet, so small! ❤️
permalink
* *
Mar 9, 2021
Today was documentation day
Primitives available in the Mu computer when running without an OS: https://github.com/akkartik/mu/blob/main/vocabulary.md
Primitives available when running on Linux: https://github.com/akkartik/mu/blob/main/linux/vocabulary.md
For starters I focused just on making things more discoverable. These files are optimized for opening in your text editor, jumping to definitions to see type signatures, etc. See https://github.com/akkartik/mu/blob/main/editor/exuberant_ctags_rc for a ctags configuration for Mu and SubX programs.
Main project page: https://github.com/akkartik/mu
permalink
* *
Mar 7, 2021
Visualizing function calls with anonymous functions
https://github.com/akkartik/mu
permalink
* *
Mar 4, 2021
I
really wish I'd read Kragen Sitaker's
https://dercuano.github.io/notes/forth-assembling.html before I built SubX.
permalink
* *
Mar 3, 2021
I took a stab at reorganizing Mu's directory tree. It had gradually sprawled from old stuff at the top-level to new stuff in sub-directories. Now the top-level contains what I want people to see first, and build tools for each directory are in a sub-directory.
Building a disk image before:
./translate_mu_baremetal baremetal/life.mu
After:
./translate life.mu
Building an ELF binary before:
./translate_mu apps/hello.mu
After:
cd linux; ./translate hello.mu
https://github.com/akkartik/mu#readme
permalink
* *
Mar 3, 2021
Have you cloned the Mu repo and tried to make sense of it? Do you have any suggestions for improving the directory organization? I'm starting to revisit it, so would appreciate any thoughts you have. (Even if this gets you to clone the repo for the first time.)
https://github.com/akkartik/mu
permalink
* *
Feb 25, 2021
Drilling into computations on the Mu shell
This was one of the more difficult things I've built, and yet all I've gotten working so far is some rudimentary tokenization. The reason is one little feature.. well, take a look for yourself.
https://archive.org/details/akkartik-2min-2021-02-24 (video; 2 mins)
As always, built all the way up from machine code, and designed primarily to be easy to build, easy to run, comprehensible to others. Also this time with lots of tests.
https://github.com/akkartik/mu
permalink
* *