← Blog
0.6.0 · apps + compositor

EL0 Overlay App Fleet: 12 DSO Apps + Compositor Scene ABI

June 22, 2026 · sigil-apps · Sigil-Docs
apps overlay wm compositor 0.6.0

sigil-os ships syscall 105 (Direct-Scene Overlay absorption) and sigil-apps ships 12 overlay EL0 demo apps — plus real Lumen libwin apps with full AA typography and rounded chrome. All cap-gated via the broker session slot. (df6c08e + sigil-apps batch)

Z-order overlay demo on x86
Z-order overlay demo on x86 — 3-window cascaded compositor proof

Syscall 105: Direct-Scene Overlay (DSO) absorption

The WM compositor accepts EL0 overlay scene submissions via syscall 105. Each submission is a cap-gated scene delta — the EL0 app holds a DSO slot handle from the broker, not the raw compositor token. Three commits build out the DSO ABI:

Syscalls 106 and 107 (fb_overlay_raise / fb_overlay_lower) let EL0 apps adjust their z-order slot at runtime — used by ovlz and ovlmulti for the cascaded compositor demo.


The 12 overlay demo apps

AppDescription
ovltextPixel-art 5×7 glyph renderer
ovltermMini terminal with pixel-art text input
ovlclock7-segment live tick-counter
ovlprogressAnimated progress bar
ovlspriteBouncing pixel-art sprite
ovlpaletteRGB color swatch reference
ovlgraphInteger sine/cosine waveform
ovlpongPong game in an overlay window
ovlmatrixMatrix rain — 20 columns, fading green trails, 80 frames
ovlzZ-order demo: fb_overlay_raise/lower syscalls 106/107
ovlmulti3-window cascaded overlay, N-slot Z-order compositor proof
ovlcalc4-function calculator with 7-segment LCD (Director T1+ ③)

ovlmatrix runs 80 frames with 20 columns of cascading green characters; each column has an independent decay timer for fading trails. ovlmulti is the N-slot compositor stress test: three simultaneous overlay windows, each submitted to a different DSO slot, with live z-order cycling.

ovlcalc — 7-segment 4-function calculator
ovlcalc — 7-segment 4-function calculator in a Lumen overlay

Lumen libwin apps

Four apps use the libwin Lumen scene API — real Lumen AA typography, rounded window chrome, and the full lw_* widget set:

Widget vocabulary across all libwin apps: lw_title, lw_label, lw_value, lw_badge, lw_rule, lw_console, lw_capchip. All render via the Lumen scene ABI — GPU framebuffer first, software-2D fallback for Pi3-floor targets.