Now/log (2021-02)

Newest entries.

Previous month.


No computers.


Wasted a few hours of my life trying to get Raspbery Pi 4 (with 9front) to show anything on the serial console. I gave up.


Reading on PIT programming.


Can people stop trying to turn Gemini into WebShit 3.0, PLEASE?

CW: brain dump. Since grid chat “wraps” are possible, I’ll keep recording my own thoughts here as well.

sigrid → window resizing happens on left mouse, moving on right. one can resize any edge or a corner of a window
sigrid → now what if I could _chorde_ either an edge or a corner and then _paste_ it on another window's edge or corner to resize that window so the borders (depending on what edge/corner was copied AND pasted to) of both windows align
sigrid → *chorde
sigrid → obviously it will break the "cancel the resize"
sigrid → dunno which one would be more useful
sigrid → if one can copy/paste stuff like that, rio could also be made semi-tiling, so a user can opt-in to tile specific windows in interesting ways, like if two windows are attached one to another, but only on left/right, so resizing one vertically won't change the size of the other one, for example
sigrid → ie copying an edge and pasting on another window would attach those edges together
sigrid → moving one window would move the whole group
sigrid → maybe it's just nested rio, but with the actual rio being invisible


ACPI is terrible.

I should add kvm clock to 9front’s vmx, the guest clock is very off.


Reduced CPU load when running vmx on 9front (change pushed).

Treason will play FLAC audio as well now. Who knew people put it into anime sometimes…

Broke my Void Linux running in vmx, have to reinstall :(


Added a very simple highlight on a clicked item in bar. Looks more interactive this way.

Fixed a bug in treason related to playback of some H.264 videos (some weird frame jumping).


Look ma, NO COMPUTERS. (this gets old)


Finally got my ears stretched to 0g (8mm).

Just say no to computers.


Added remote controlling to zuke through plumber: plumb -d audio 'key >' will skip to the next song. plumb -d audio 'key ------' will reduce the volume, 6 steps at a time.

Updated bar manpage to show an example of how zuke can be controlled by mouse clicking, via a script that reads bar’s stdout:

bar with playback control


Umbraticus wrote a music player in rc that has a surprising amount of features: keyboard controls, plumbing, cover art, playlist live-editing.

Seems like mcfs isn’t remuxing Theora properly because the granule position in Ogg stream must be set in a very specific way, see Theora spec, page 144.


Added -t option to treason. It specifies a track id to use, so that -t 1 -t 10 can be used to select, for example, video track 1 and audio track 10 from the media file played.

Fixed a bug with xiph-laced matroska blocks logic in mcfs.


Mothra changes for better entry text editing are pushed.

Got a bit stuck with BSP2 changes for qk1: some kind of model caching bug prevents the game from starting on huge maps.


Modern (no pun intended) Quake 1 engines have increased limits and support BSP2 map format that uses int in place of short, which allows for much bigger maps. Need to add that to qk1.


No computers.


No computers.


Today I worked a bit on Mothra browser. I am making address bar (and text entries) editing better. So far I’ve added a tick which can move around with arrow keys, parts of text may be selected and cut, replaced, etc. Dragging selection to the right isn’t working yet but I know how to fix that. After doing it (next week) and cleaning up the patch, I’m gonna push it to 9front.

Here’s the patch if you’re willing to try it out early.


Cleaned the dust off my lemon trees. Planning to plant more things, it’s nice to surround oneself with plants.


Played a bit with qk1: increased several limits to make large maps run and render properly. This will need a small clean up and a symmetrical change in QW part, but might be a start for more changes, perhaps Quake 2 port later as well.

Plan 9 Foundation: Diversity and Inclusion


Brand new man page for bar, as part of “a man page per project” project. Also added -d option to specify date/time format (as seen on tmdate(2)).


Converting YUV to the format that the screen is using is faster than to RGB24 first, then to the screen’s format. Who could have thought.

One of the issues with remuxing to Ogg has been solved in mcfs. Test samples of H.264 inside Matroska are playing smooth now, but another issue appeared, resulting in a weird frame jump once a second(?), will need to find out what happens there. Playing the extracted stream with mplayer shows no issues, so the problem must be in treason itself, probably the damn frame reordering again…

AAC is now extracted from Matroska with ADTS constructed based on codec private data. That fixes some videos having audio out of sync.

Unrelated phrase of the day: “neat people”.


No computers.


No computers.


mcfs parses all the Matroska test samples now.

There are still seem to be some issues with remuxing things to Ogg when it’s either Opus or Theora. Vorbis is fine, for some reason. I am missing something.


Cosmetic fixes in zuke, nothing special.

enter/eenter fixes (for ^W, and with UTF-8) in 9front.


A bit less flickering with riow now. Might be switching desktops faster as well.

zuke will write currently playing metadata to stdout, unless it’s /dev/cons. The format is the same as columns displayed, each separated with a tab. When playback is stopped, a blank line is written, ie zero columns.

Neat: a Gemini directory, full of links to gemini capsules, organized in topics, with short descriptions of the content.


Used disk/mkfs to pack up an archive of treason with all its dependencies, which is now what the new installation method is using. Takes less space and the process is much faster and easier.


Fixed another bug in treason to support B-frames. More H.264 videos are gonna be playable now.

Added ^W to netsurf port.

Older entries


Last update: April 07, 2021 09:04AM