Business system conventions on x86-64 hardware.

Bluestem is a clean-room project built around typed objects, authority, Control Language commands, and a 5250 display data stream.

It runs on ordinary hardware under UEFI and is implemented primarily in Rust.

Boot it in this browser ↓

What is implemented

Bluestem is not a terminal theme or a compatibility shell. Its core includes an object store, profile security, a command parser, localization catalogs, and a display station that consumes the 5250 stream.

The project is early. The shipped system boots, accepts a sign-on, and persists profile changes across an IPL. The next stages add program objects, broader Control Language support, storage, and jobs.

01

Security and profiles

CRTUSRPRF, CHGUSRPRF, DLTUSRPRF, DSPUSRPRF, WRKUSRPRF, and CHGPWD.

02

System operations

DSPJOB, DSPLIBL, CHGCURLIB, DSPSYSVAL, CHGSYSVAL, SIGNOFF, and PWRDWNSYS.

03

Display and keyboard

A built-in display station interprets a 24×80 5250 stream and maps PC keyboard input to the expected command, roll, and field keys.

Boot the real operating system

This client-only machine runs QEMU-Wasm, OVMF, and Bluestem locally. Its 5250 display crosses the emulated virtio NIC and the guest’s Ethernet, TCP, TELNET, and TN5250 stacks.

CLIENT-ONLY QEMU-WASM / TN5250≈4.7 MB COMPRESSED · 1 GiB MEMORY

One click checks browser support, downloads and verifies the machine, performs the IPL, and connects the 5250 display. This temporary demo starts fresh and is discarded when the page closes.

5250 display 1

24 × 80 · IBM-3179-2
Machine is powered off.

Tab and Shift-Tab move between fields. End is Field Exit. Shift-End erases to the end of a field. Escape resets a keyboard error. Page Up and Page Down send roll keys.

Small, inspectable boundaries

bluestem-core

Object model, Control Language parser, commands, panels, message catalogs, and the 5250 stream.

bluestem

UEFI kernel, framebuffer display, PS/2 input, ATA disk I/O, and machine-specific code.

Browser machine

The same headless EFI boots under a pinned QEMU-Wasm runtime. This landing-page demo uses a temporary SYSBAS; the standalone browser application retains verified IndexedDB save and recovery.

CL command example
CRTUSRPRF  USRPRF(SMITH)  PASSWORD(PROTON9)  +
           USRCLS(*PGMR)  TEXT('Example profile')

Commands have declared parameters, defaults, special values, and an F4 prompt.

Third-party licenses

The browser emulator includes third-party software, including QEMU under GPLv2, with the required notices, source offer, and dependency inventory.

Read browser notices →