*Screenception*
Visualizing programs with side-effects in a postfix shell with a live-updating text-mode environment. Built all the way up from machine code without any dependencies (except an x86 processor and Linux kernel).
https://archive.org/details/akkartik-2min-2020-11-12
Project page: https://github.com/akkartik/mu
More context: https://mastodon.social/@akkartik/104896128141863951
*Editing functions in the Mu shell*
https://archive.org/details/akkartik-2min-2020-12-06
Long delay since my last video. Printing floating-point numbers is *really* hard. I'm still half-assing it.
As a follow-up to https://merveilles.town/@akkartik/105331619408248578, I'm tightening focus to two threads:
a) These Mu shell experiments, and
b) An extremely skeletal OS to drop the Linux kernel dependency.
Deprioritized for now:
a) Other processors: RISCV, ARM, RPi, etc.
b) Graphics, mouse, etc. Device priorities for the OS are disk then ethernet.
*Towards running Mu without Linux*
All Mu really needs so far is to print to screen and read from the keyboard. Here's a 2-minute video about achieving that:
https://archive.org/details/akkartik-2min-2020-12-24
It seems such a small thing. But I needed lots of help, as you can see from the additions to my credits: https://github.com/akkartik/mu/compare/670cbb3d33807efb2d5e0db9e54ffed42f7ef0e3..main?short_path=b335630#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
Merry Christmas to all! What a beautiful world.
Project page: https://github.com/akkartik/mu
More context: https://mastodon.social/@akkartik/104896128141863951
*Switching gears to pure graphics*
Until now Mu has followed classic Unix: stdin, stdout, pure text mode.
But giving up an OS kernel requires controlling the screen myself. Which requires various complicated probing for hardware. Then programs handling various screen sizes.
Easier: just always assume some common graphics mode. Say 1024x768 with 256 colors.
Interestingly, the default palette has far fewer than 256 colors. (Pic: 1024 cols each contain color `col%256`.)
*2020: Flood-filling the Mu computer*
A year ago I had a prototype of a C-level programming language mapping 1:1 to Assembly that I _thought_ could be type-safe.
Since then, I:
* wrote an academic paper on it
* made it type-safe
* began a high-level language atop it
* got into video, with 15 2-minute screencasts
* and ran programs written in it on bare metal, without an OS, like, 5 years before I expected to.
❤️ to everyone who inspired, taught, debated, encouraged.
My 2020 wrap-up is turning into a bit of a rabbit hole:
http://akkartik.name/post/mu-2020
I ended up trying to create a Wardley Map (https://en.wikipedia.org/wiki/Wardley_map) for Mu.