# Oberon System Interface (オベロン・システムの画面)

> The screen of the system Niklaus Wirth and Jürg Gutknecht built at ETH between 1986 and 1989. Windows never overlap: the display is split into vertical tracks and each track is tiled top to bottom. Any text anywhere on the screen can be run as a command if it reads M.P and you click it with the middle button, so the system needs no menu widget at all.

- IndexStyle No.536 — https://indexstyle.org/styles/oberon-system-ui
- Kind: Layout · Family: Platform Screen Languages · Era: 1988–
- Mood: Technique, Calm, Rebellion
- What this family collects: Design languages written down for a platform and published, from the vendors that shipped an operating system to the governments that had no reason to hide rules paid for with public money, every one of them recognisable at a glance.

## Defining characteristics

- Nothing overlaps: the display is cut into vertical tracks first, then tiled top to bottom inside each track
- A narrow track on the right holds a log above and a text of commands below, with the wide working track on the left
- A one line title bar across the top of every viewer, carrying the document name and commands such as System.Close as plain text
- One bit per pixel, black on white, with borders drawn as single lines and no shadow, rounding or grey

## Best used for

- Designing a workspace that gives up overlapping windows, where placement is decided by only two moves: which track, and where in that track
- Giving a product a command list the user can rewrite, held as an ordinary editable text instead of a dedicated menu component

## Composition recipe

- Typography & lettering: Set commands in the same face and size as body text. Name them M.P and spell them out as words, Copy and Rename rather than cp and rn.
- Layout & structure: Cut the display into vertical tracks and divide each track horizontally. Never overlap. Keep a narrow right hand track for the log and the command text and leave the left wide. Give every viewer a one line title bar.
- Material & texture: One bit, black on white. Single pixel rules, no shadow, no rounded corners, no greys and no colour. Mark the insertion point with a hook.

## Colour

Read off the reference works below, so a direction rather than a fixed palette.

- Ground: #FFFFFF
- The colour it is remembered by: #808080
- Text and outlines: #000000

## What to avoid

Copying the tiling without the rule that any text on screen is executable forces the menu bar and the buttons back in, and all that is left is a cramped layout.

## Application checklist

Work through this before calling a piece an application of this style.

- [ ] Visible in the piece: Nothing overlaps: the display is cut into vertical tracks first, then tiled top to bottom inside each track
- [ ] Visible in the piece: A narrow track on the right holds a log above and a text of commands below, with the wide working track on the left
- [ ] Visible in the piece: A one line title bar across the top of every viewer, carrying the document name and commands such as System.Close as plain text
- [ ] Visible in the piece: One bit per pixel, black on white, with borders drawn as single lines and no shadow, rounding or grey
- [ ] The layout follows: Cut the display into vertical tracks and divide each track horizontally. Never overlap. Keep a narrow right hand track for the log and the command text and leave the left wide. Give every viewer a one line title bar.
- [ ] The lettering follows: Set commands in the same face and size as body text. Name them M.P and spell them out as words, Copy and Rename rather than cp and rn.
- [ ] The material and surface follow: One bit, black on white. Single pixel rules, no shadow, no rounded corners, no greys and no colour. Mark the insertion point with a hook.
- [ ] The colour relation holds: #FFFFFF as ground, #808080 carrying the style, #000000 for text and outlines
- [ ] At least one reference work below has been studied directly
- [ ] The caution above ("What to avoid") has been addressed

## Related styles

- **Motif (モチーフ)** — Motif is the interface language of UNIX workstations, maintained by The Open Group, standardized as IEEE 1295 and shipped on more than two hundred platforms. Its own data sheet calls the look a distinctive 3D beveled appearance, meaning every part sits on a gray face edged with one light line and one dark line. → https://indexstyle.org/styles/motif
- **Terminal UI (ターミナルUI)** — The terminal look: monospaced phosphor characters on black. The VT100's green afterglow became the primal image of the computer's face, repeated from hacker cinema to modern CLI tools. → https://indexstyle.org/styles/terminal-ui

## Compose it with something else

The dictionary can put this entry in a structural role and another in an accent role, and report where the two fight: https://indexstyle.org/compose?ids=oberon-system-ui+motif

## Further study

- chapter 4 of Project Oberon, on why free tiling and hierarchical tiling are compared and which was chosen
- the contents of System.Tool, and what it means that the command list can be edited as plain text
- how consistently the three button rules hold, left for the cursor position, middle for commands, right for selection

## Reference works

- Oberon-0 screen, tag lines and gapless tiled surface — Wikimedia Commons / CC BY-SA 4.0 — https://commons.wikimedia.org/wiki/File:Oberon0UnderQEMU.png
- Oberon V4 screen, two-column tiling — Wikimedia Commons / CC BY-SA 4.0 — https://commons.wikimedia.org/wiki/File:OberonV4.on.iMacM1.png
- Tablet running PC Native Oberon — Wikimedia Commons / CC BY-SA 4.0 — https://commons.wikimedia.org/wiki/File:TatungTWN5213Oberon.png

## Source of record

- ETH Zürich / Niklaus Wirth — Project Oberon (New Edition 2013) — https://people.inf.ethz.ch/wirth/ProjectOberon/index.html

## Machine surfaces

- JSON: https://indexstyle.org/api/styles/oberon-system-ui
- Image-generation prompt (legally clean): https://indexstyle.org/styles/oberon-system-ui/prompt.txt
- MCP: https://indexstyle.org/mcp (tools: search_styles, get_style, compare_styles, compose_styles, find_related_styles; prompts: image-prompt, apply-style)
