nOSh BARE DECK — Terminal HUD Specification
nOSh-Runtime-Level Experience — KN-86 Deckline Without Cartridge
Version 1.0 | Status: Playtest Design | Date: 2026-04-10
CIPHER-LINE revision note (2026-04-24): CIPHER has been removed from the main 80×25 grid entirely. Live Cipher voice renders on the CIPHER-LINE OLED above the keyboard (see
docs/architecture/KN-86-CIPHER-LINE-Grammar-Framework.mdandadr/ADR-0015-cipher-line-auxiliary-display.md). The bare deck HUD is therefore a four-tab layout (STATUS, LAMBDA, LINK, SYS); the previous CIPHER tab has been deleted. The Null cartridge is the one sanctioned exception where Cipher glyphs appear on the main grid, via thecipher-main-grid-escapecapability (ADR-0015 §3a); no nOSh runtime tab and no other cartridge may render Cipher on the main grid.
VISION
Section titled “VISION”The KN-86 Deckline is an operational terminal FIRST, a cartridge platform second. The bare deck—the runtime-level HUD that appears when the device powers on with no capability module inserted—is genuinely useful and complete in itself. It is not a splash screen, not a loading state, not a menu waiting for real software. It is a pocket terminal that teaches the Deckline’s grammar, maintains the operator’s universal deck state, runs runtime-level bounties, hosts deck-to-deck interactions, and remains the transition layer when cartridges are swapped. The Cipher voice accompanies bare-deck sessions continuously on CIPHER-LINE; it does not appear on the main grid.
An operator who has never loaded a cartridge can still:
- Boot a fresh deck and establish their identity
- Earn credits through runtime bounties
- Record and playback macros
- Connect deck-to-deck via the Link protocol
- Hear the Cipher voice ambiently on CIPHER-LINE
- Manage system settings
The bare deck is where cartridge-less operators choose to stay, and where every other operator continuously returns to reorient between missions.
FOUNDATION: UNIVERSAL DECK STATE
Section titled “FOUNDATION: UNIVERSAL DECK STATE”All state persists in 64 bytes of SRAM across every session, every cartridge, every power cycle:
typedef struct { char operator_handle[12]; /* Identity: set once, persists forever */ int32_t credit_balance; /* Universal currency (¤) */ uint16_t reputation; /* Cumulative standing across all ops */ uint32_t cartridge_history; /* Bitfield: which modules ever loaded */ uint8_t lambda_slots[256]; /* 8 × 32-step recorded macros */ uint8_t quote_slots[32]; /* 8 × 4-byte Cell/Passage bookmarks */ uint8_t phase_chain[16]; /* Multi-phase mission state (suspended) */ uint8_t cipher_seed[4]; /* LFSR state: Cipher evolution */ uint8_t reserved[16]; /* Expansion slots */} DeckState;This is the operator’s permanent record. The bare deck displays it, but the nOSh runtime owns it. Every tab reads from this structure; cartridges may modify specific fields (credits earned, reputation gained, phase chain updated), but the deck state itself never leaves SRAM.
BOOT SEQUENCE
Section titled “BOOT SEQUENCE”First Boot Ever
Section titled “First Boot Ever”Power on → nOSh runtime initializes display and audio → reads SRAM operator handle field → handle is empty.
- Kinoshita header (2 lines): Amber text on black. nOSh runtime version, copyright, device serial.
- Cipher greeting: A contextual voice line (randomly selected from a first-boot template set). Example: “EMPTY DECK. NEW OPERATOR. WHAT IS YOUR HANDLE?”
- Handle entry prompt: The nOSh runtime enters a specialized text-entry mode. The operator uses:
- Numpad (0–9, . , ENT, +): Direct digit/symbol entry
- CAR/CDR: Cycle through letters A–Z (CAR = previous letter, CDR = next letter; wraps)
- EVAL: Confirm entry
- BACK: Cancel and try again
- Identity established: The handle is written to SRAM. Timestamp recorded. Credits set to 0¤. Reputation set to 0. Cipher seed initialized from the real-time clock or a hardware entropy source.
- Auto-land on STATUS tab: The main four-tab HUD appears.
Subsequent Boots
Section titled “Subsequent Boots”Power on → nOSh runtime initializes → reads operator handle from SRAM → handle exists.
- Kinoshita header (2 lines)
- Cipher greeting: Contextual text based on deck state (different every boot). Examples:
- “OPERATOR GHOSTWIRE. WELCOME BACK.” (fresh session, known operator)
- “GHOSTWIRE. 47 REPUTATION. THE BOARD IS WAITING.” (experienced operator)
- “OPERATION SUSPENDED. AWAITING BLACK LEDGER. PHASE 2/3.” (mid-contract state)
- Auto-land on STATUS tab: Displays current deck state.
HUD ARCHITECTURE: FOUR TABBED VIEWS
Section titled “HUD ARCHITECTURE: FOUR TABBED VIEWS”The bare deck uses the same navigation grammar as cartridges:
- CDR: Cycle through tabs (left to right, wraps)
- CAR: Enter the current tab’s interactive mode
- BACK: Return to the tab strip from interactive mode
- Tab indicator: Thin bar at row 0 (or row 24) showing the four tab names; current tab is highlighted
The four nOSh-runtime-owned tabs are:
- STATUS — Identity and universal state summary
- LAMBDA — Macro recorder and executor
- LINK — Deck-to-deck protocol and runtime bounties
- SYS — System settings, diagnostics, and operator management
Cipher voice runs continuously on CIPHER-LINE across all four tabs; it is not a tab on the main grid.
TAB 1: STATUS
Section titled “TAB 1: STATUS”The identity screen. This is where the bare deck boots, where every operator lands between cartridge sessions, and where the fiction becomes personal.
Layout (80×25 text)
Section titled “Layout (80×25 text)”Row 0: ┌─ STATUS • LAMBDA • LINK • SYS ────────────────────────┐Row 1: └────────────────────────────────────────────────────────┘Row 2: OPERATOR: GHOSTWIRERow 3: REPUTATION: ████████░░ 47 CREDITS: 2,840 ¤Row 4: ────────────────────────────────────────────────────────Row 5: REGISTERED CAPABILITIES:Row 6: [■] ICE BREAKER — Network Intrusion (Module 0x01)Row 7: [■] NEONGRID — Grid Traversal (Module 0x02)Row 8: [■] BLACK LEDGER — Forensic Audit (Module 0x03)Row 9: [ ] DEPTHCHARGE — (not registered)Row 10: [ ] ──────── — (slot empty)Row 11: [ ] ──────── — (slot empty)Row 12: ────────────────────────────────────────────────────────Row 13: PHASE CHAIN:Row 14: Phase 2/3: EXTRACTION → AUDIT (awaiting BLACK LEDGER)Row 15: ────────────────────────────────────────────────────────Row 16: LAMBDA SLOTS:Row 17: λ1: [■■■■░░░░] 14 steps λ5: [░░░░░░░░] emptyRow 18: λ2: [■■░░░░░░] 8 steps λ6: [░░░░░░░░] emptyRow 19: λ3: [░░░░░░░░] empty λ7: [░░░░░░░░] emptyRow 20: λ4: [░░░░░░░░] empty λ8: [░░░░░░░░] emptyRow 21: ────────────────────────────────────────────────────────Row 22: RUNTIME: nOSh v2.4 | UPTIME: 00:14:32 | CIPHER: ONLINERow 23: CARTRIDGE SLOT: EMPTY — AWAITING MODULERow 24: [INFO: details EVAL: refresh CAR: drill BACK: ↑]Fresh Deck (First Boot After Handle Entry)
Section titled “Fresh Deck (First Boot After Handle Entry)”Row 2: OPERATOR: GHOSTWIRE (just entered)Row 3: REPUTATION: ░░░░░░░░░░ 0 CREDITS: 0 ¤Row 5: REGISTERED CAPABILITIES:Row 6: [ ] ──────── — (slot empty)...all slots empty...Row 13: PHASE CHAIN: NONERow 16: LAMBDA SLOTS: ALL EMPTYRow 23: CARTRIDGE SLOT: EMPTY — AWAITING MODULEInteractions
Section titled “Interactions”- CAR: Enter capability roster — drill into a registered module’s contract history (total contracts completed, cumulative credits earned from that module, reputation threshold met).
- INFO: Toggle between summary (above) and detailed breakdown. Double-tap for deep diagnostics: RAM usage, SRAM CRC, cartridge history bitfield displayed in binary.
- EVAL: Refresh deck state (re-read SRAM from hardware, useful after a cartridge session).
- CDR: Cycle to LAMBDA tab.
- BACK: (Already at tab level; no-op.)
TAB 2: LAMBDA
Section titled “TAB 2: LAMBDA”Macro recorder and executor. nOSh-runtime-level recorded key sequences that persist in SRAM across all cartridges.
An operator can record up to 8 macros, 32 steps each. Steps are key names (not decoded input; the nOSh runtime records which key was pressed). On playback, the nOSh runtime re-executes those key presses in sequence with 200ms delays between steps.
Lambda macros are nOSh-runtime-owned, not cartridge-owned. They survive cartridge swaps. An operator can record a boot-check macro on the bare deck and replay it inside an ICE BREAKER contract.
Layout
Section titled “Layout”Row 0: ┌─ STATUS • LAMBDA • LINK • SYS ────────────────────────┐Row 1: └────────────────────────────────────────────────────────┘Row 2: LAMBDA EDITORRow 3: ────────────────────────────────────────────────────────Row 4: SLOT 1: ████████████████░░░░░░░░░░░░░░░░ 14/32 stepsRow 5: 01: INFO 02: CDR 03: CDR 04: CAR 05: EVALRow 6: 06: BACK 07: CDR 08: CAR 09: APPLY 10: EVALRow 7: 11: BACK 12: BACK 13: QUOTE 14: EVALRow 8: ────────────────────────────────────────────────────────Row 9: SLOT 2: ████████░░░░░░░░░░░░░░░░░░░░░░░░ 8/32 stepsRow 10: 01: CDR 02: CDR 03: CDR 04: CDR 05: CDRRow 11: 06: CAR 07: INFO 08: BACKRow 12: ────────────────────────────────────────────────────────Row 13-20: [Slots 3–8, same format; most likely empty]Row 21: ────────────────────────────────────────────────────────Row 22: MODE: VIEW | SELECTED: SLOT 1 | RECORDING: OFFRow 23: ────────────────────────────────────────────────────────Row 24: [LAMBDA: record EVAL: playback NIL: clear CONS: merge]Interactions
Section titled “Interactions”Tab Navigation:
- CDR: Cycle through slots 1–8 (in VIEW mode).
- CAR: Select current slot for editing (enters EDIT mode, shows step-by-step breakdown).
View Mode (default):
- LAMBDA: Start recording into selected slot. Display changes to “RECORDING: ON”. All subsequent key presses (except BACK, which is reserved for abort) are captured as steps. Maximum 32 steps. Press LAMBDA again to stop recording. Progress bar updates in real-time.
- EVAL: Playback selected slot’s macro sequence. The nOSh runtime executes each step with 200ms delays. Can be interrupted by pressing BACK.
- NIL: Clear selected slot (confirmation required: press EVAL to confirm, any other key to abort).
- CONS: Merge two slots. Enter EDIT mode for slot A. Press CONS. Then CDR to slot B. Press CONS again to confirm. The nOSh runtime concatenates A + B (up to 32 steps total; excess steps are truncated) and writes the result to the next available slot. If all slots are full, merge fails (show error: “ALL SLOTS FULL”).
- ATOM: Test whether selected slot is empty. Returns a visual indicator (hollow bar for empty, filled bar for occupied).
- EQ: Compare two slots side-by-side. CDR to select slot A. Press EQ. CDR to slot B. Press EQ to confirm. Display shows a diff view: step-by-step comparison. Highlights differences (useful for debugging macros).
Edit Mode (after CAR on a slot):
- CDR: Cycle through individual steps in the macro. Display shows the current step number and key name.
- EVAL: Toggle the current step. If the step is populated, mark it for deletion (shown as ”────” in the list). If empty, skip to the next populated step.
- BACK: Exit EDIT mode, return to VIEW mode.
Lambda as Operator Skill
Section titled “Lambda as Operator Skill”Lambda macros teach:
- Repetition: An operator records a tab-cycling sequence and plays it back 10 times. The device obeys. The operator learns that the Deckline responds to patterns.
- Composition: The CONS operator allows merging, building complex macros from simple ones.
- Testing: EQ allows side-by-side comparison, teaching operators to debug their own recorded sequences.
TAB 3: LINK
Section titled “TAB 3: LINK”Deck-to-deck protocol interface. The 3.5mm TRRS serial port connects two KN-86 units at 9,600 baud using a simple framing protocol (nOSh LINK v1).
The bare deck hosts three types of Link interactions: connection diagnostics, operator challenges (runtime bounties), and deck state comparison.
Layout (No Connection)
Section titled “Layout (No Connection)”Row 0: ┌─ STATUS • LAMBDA • LINK • SYS ────────────────────────┐Row 1: └────────────────────────────────────────────────────────┘Row 2: LINK PROTOCOLRow 3: ────────────────────────────────────────────────────────Row 4: STATUS: NO CONNECTIONRow 5: PORT: 3.5mm TRRS | BAUD: 9600 | PROTOCOL: nOSh LINK v1Row 6: ────────────────────────────────────────────────────────Row 7: LINK HISTORY:Row 8: Last connected: OPERATOR SIGNAL | 2 days agoRow 9: Total links: 14 | Unique operators: 3Row 10: ────────────────────────────────────────────────────────Row 11: NOSH RUNTIME CHALLENGES (solo):Row 12: [!] DIAGNOSTIC (5¤) — Verify hardware systemsRow 13: [!] LFSR EXERCISE (5¤) — Predict LFSR sequenceRow 14: ────────────────────────────────────────────────────────Row 15: LINK CHALLENGES (cooperative):Row 16: [ ] LFSR SYNC — timing puzzle (10¤ each, when linked)Row 17: [ ] ECHO TEST — latency race (5¤ winner, when linked)Row 18: ────────────────────────────────────────────────────────Row 19: SOLO BOUNTY BALANCE: 10¤ availableRow 20: ────────────────────────────────────────────────────────Row 24: [LINK: ping EVAL: accept INFO: details BACK: ↑]Layout (Connected)
Section titled “Layout (Connected)”Row 4: STATUS: CONNECTED — OPERATOR SIGNAL (latency: 12ms)Row 5: PORT: ACTIVE | SIGNAL STRENGTH: ████████░░Row 6: ────────────────────────────────────────────────────────Row 7: REMOTE DECK STATE:Row 8: OPERATOR: SIGNAL | REP: 23 | CR: 1,200¤ | RUNTIME: v2.4Row 9: CAPABILITIES: ICE BREAKER, DEPTHCHARGERow 10: ────────────────────────────────────────────────────────Row 11: LINK CHALLENGES (available now):Row 12: [!] LFSR SYNC — cooperative timing puzzle (10¤ each)Row 13: [!] ECHO TEST — competitive latency race (5¤ winner)Row 14: [ ] DECK COMPARE — state diff analysis (0¤ diagnostic)Row 15: ────────────────────────────────────────────────────────Row 16: COMBINED BOUNTY POOL: 25¤ availableRow 20: ────────────────────────────────────────────────────────Row 24: [LINK: ping EVAL: start EQ: compare INFO: details]Interactions
Section titled “Interactions”No Connection:
- LINK: Ping (send handshake packet on the serial port). If another KN-86 is connected and listening, it responds. Display updates to show connection.
- CAR: Enter a solo challenge’s detail view (show rules and payout).
- EVAL: Accept and start a solo challenge.
- INFO: Show port diagnostics (baud rate verification, packet error rate, signal strength if connected).
Connected:
- LINK: Send a keepalive ping. Display updates latency.
- CAR: Enter a challenge’s detail view.
- EVAL: Accept and start a cooperative challenge (or initiate a competitive challenge).
- EQ: Initiate deck state comparison (side-by-side view of both operators’ deck state).
- INFO: Show remote deck state details (full operator stats, capability list).
Solo nOSh Runtime Bounties
Section titled “Solo nOSh Runtime Bounties”These bounties can be completed on any deck, without Link:
DIAGNOSTIC (5¤, once per boot cycle)
- The nOSh runtime prompts the operator to press each of the 30 keys in sequence.
- After all keys are pressed, the nOSh runtime verifies:
- Display renders correctly (changes color briefly per key).
- Audio response: each key triggers a subtle tone (3 different tones in sequence per key press).
- SRAM read/write: a test pattern is written and read back.
- On completion: “HARDWARE VERIFIED. DIAGNOSTIC COMPLETE.” Operator earns 5¤.
- Useful as a health-check on power-up.
LFSR EXERCISE (5¤, repeatable, ~3 min, difficulty scales with reputation)
- The nOSh runtime displays a number sequence at row 2: “SEQUENCE: 42 → 17 → 68 → 34 → ?”
- The sequence is derived from the deck’s LFSR (4 visible transitions).
- Operator enters the predicted next value via numpad (0–999, 3 digits) + EVAL.
- Difficulty: at rep 0–10, sequences are simple (always increment/decrement). At rep 35+, sequences use XOR patterns (harder to predict).
- On success: “+5¤”. A new sequence is offered.
- Tests pattern recognition and LFSR literacy.
Cooperative Link Bounties
Section titled “Cooperative Link Bounties”These require two KN-86 units connected via Link:
LFSR SYNC (10¤ per operator, cooperative, ~2 min)
- Both decks display a scrolling 4-digit number sequence (derived from each deck’s LFSR).
- The sequences are deterministic but initially out of sync.
- Operators must press EVAL simultaneously when the sequences align (match the same value).
- The nOSh runtime uses latency measurement to determine if presses were within ~100ms of each other.
- On success (both pressed within window): both decks display “SYNC CONFIRMED. +10¤ EACH”. Both operators earn 10¤.
- On failure (one press too early or late): “SYNC FAILED. TRY AGAIN.”
- Teaches: timing coordination, LFSR observation, cooperative gameplay.
ECHO TEST (5¤ winner, competitive, ~1 min)
- The nOSh runtime on one deck (randomly selected) plays a distinct tone (500Hz + 1000Hz harmonics, 200ms).
- The other operator must press EVAL as quickly as possible after hearing the tone.
- Latency is measured (time from tone playback to EVAL press).
- Display shows: “LATENCY: 245ms. OPPONENT LATENCY: 310ms. YOU WIN. +5¤”
- Loser sees: “LATENCY: 310ms. OPPONENT LATENCY: 245ms. YOU LOSE. +0¤”
- Tests audio response and reflexes. Teaches audio feedback importance.
DECK COMPARE (0¤, diagnostic, ~2 min)
- Displays a side-by-side table of both decks’ state:
FIELD | YOUR DECK | SIGNAL'S DECK─────────────────────────────────────────────────OPERATOR | GHOSTWIRE | SIGNALREPUTATION | 47 | 23CREDITS | 2,840¤ | 1,200¤CAPABILITIES (4) | ICE/NEO/BLK | ICE/DEPACTIVE PHASE | 2/3 (BLACK) | NONELAMBDA SLOTS (3) | YES | YESLFSR SEED | 0xA7F3 | 0x2C84
- Not a bounty (0¤ payout). Used for diagnostics, reputation comparison, and friendly rivalry.
- Teaches: competitive context-awareness.
TAB 4: SYS
Section titled “TAB 4: SYS”System management, settings, and diagnostics.
Layout
Section titled “Layout”Row 0: ┌─ STATUS • LAMBDA • LINK • SYS ────────────────────────┐Row 1: └────────────────────────────────────────────────────────┘Row 2: SYSTEMRow 3: ────────────────────────────────────────────────────────Row 4: DISPLAYRow 5: Contrast: ████████░░ 80% [numpad +/- to adjust]Row 6: Backlight: ON [toggle with EVAL]Row 7: ────────────────────────────────────────────────────────Row 8: AUDIORow 9: Volume: ██████░░░░ 60% [numpad +/- to adjust]Row 10: PSG: YM2149F (3-voice + noise) [EVAL: test tone]Row 11: Key Click: ON [toggle with EVAL]Row 12: ────────────────────────────────────────────────────────Row 13: OPERATORRow 14: Handle: GHOSTWIRE [CAR: edit]Row 15: First Boot: 2026-03-15 [info only]Row 16: Sessions: 47 [info only]Row 17: ────────────────────────────────────────────────────────Row 18: NOSH RUNTIMERow 19: Version: nOSh v2.4 [info only]Row 20: Target: PICO2 | Build: 2026-04-01Row 21: SRAM: 64/64 bytes used | CRC: OKRow 22: ────────────────────────────────────────────────────────Row 23: FACTORY RESET: [hold NIL + EVAL + SYS for 3s]Row 24: [CAR: edit field +/-: adjust EVAL: test/toggle BACK: ↑]Interactions
Section titled “Interactions”Tab Navigation:
- CDR: Cycle through sections (DISPLAY → AUDIO → OPERATOR → RUNTIME → DISPLAY).
- INFO: Show detailed help for the current section.
Numeric Adjustment (Contrast & Volume):
- Numpad +: Increase (contrast 0–100%, volume 0–100%).
- Numpad −: Decrease.
- Display updates in real-time.
- Changes persist in SRAM after EVAL is pressed (commit).
Toggles (Backlight, Key Click):
- EVAL: Toggle the current field on/off.
- Display updates immediately.
- Persists in SRAM.
Operator Handle Edit:
- Navigate to OPERATOR section.
- CAR: Enter handle editor (same interface as first-boot entry).
- Numpad for digits/symbols, CAR/CDR for letters, EVAL to confirm.
- New handle is written to SRAM immediately.
Audio Test:
- Navigate to AUDIO section.
- EVAL: Plays a test tone (harmonic sweep: 440Hz → 880Hz → 1760Hz, 200ms each).
- All three YM2149 voices play in sequence, confirming PSG operation.
Factory Reset:
- Navigate to bottom (row 23).
- Simultaneously hold: NIL + EVAL + SYS for 3 seconds.
- nOSh runtime modal warning on the main grid: “THIS WILL ERASE YOUR IDENTITY. ARE YOU CERTAIN?” (CIPHER-LINE fragment in parallel:
erase. are you sure.). - EVAL: Confirm reset. SRAM is wiped. Deck returns to first-boot state (handle prompt).
- Any other key: Cancel. Return to SYS tab.
GLOBAL KEY BEHAVIOR (BARE DECK)
Section titled “GLOBAL KEY BEHAVIOR (BARE DECK)”Every key on the Deckline has a runtime-level function on the bare deck. There are no “dead” keys (except when a key is context-irrelevant).
| Key | Bare Deck Function |
|---|---|
| CAR | Enter current tab’s interactive mode / cycle letters in text edit |
| CDR | Cycle to next tab / cycle letters in text edit (opposite direction of CAR) |
| BACK | Return to tab strip from interactive mode / cancel text entry |
| EVAL | Context-dependent confirm: refresh, generate passage, accept challenge, toggle setting, test audio |
| INFO | Context-dependent inspect: show details, statistics, diagnostics (double-tap for deep view) |
| QUOTE | Bookmark: seed-capture the current CIPHER-LINE fragment, save deck state snapshot (creates quote slot entry) |
| LAMBDA | Start/stop macro recording (2s hold to begin) / play recorded macro from current slot |
| CONS | Merge two lambda slots / combine quote references |
| NIL | Clear/discard: empty a lambda slot, clear a bookmark, initiate factory reset |
| ATOM | Test emptiness: is this lambda slot used? is this field populated? |
| EQ | Compare: two lambda slots side-by-side, two deck states via link |
| APPLY | INACTIVE on bare deck. APPLY deploys tools, which require cartridges. The bare deck has no tools. |
| LINK | Ping: initiate or check Link connection / send Link protocol packet |
| SYS | Jump directly to SYS tab from anywhere / hold 2s for power menu (sleep, shutdown) |
| Numpad 0–9, . , ENT | Data entry in text edit, number input, challenge responses, adjustment |
| +, − | Increment/decrement (volume, contrast, etc.) |
Key insight: APPLY is the only key with no bare-deck function. This is intentional. APPLY requires a cartridge because it deploys tools—and an empty deck has no tools to deploy. Every other key has a direct runtime-level meaning. This teaches the operator the interaction grammar and makes the APPLY key meaningfully absent—a gap that cartridges fill.
CARTRIDGE DETECTION & HOT SWAP
Section titled “CARTRIDGE DETECTION & HOT SWAP”Inserting a Cartridge
Section titled “Inserting a Cartridge”When a cartridge is physically inserted into the SPI slot:
- Hardware detect pin goes high. The nOSh runtime polls this pin every 100ms.
- Cipher voice: “MODULE DETECTED. READING HEADER.”
- SPI read sequence (1–2 seconds): The nOSh runtime reads the 256-byte cartridge header from flash.
- Display transition: Amber flash. Cartridge name, class, and version appear center-screen.
- Cipher greeting: Contextual, based on cartridge + deck state. Example (ICE BREAKER, first insertion): “ICE BREAKER LOADED. YOUR FIRST INTRUSION AWAITS.” Example (BLACK LEDGER, mid-career): “WELCOME BACK TO THE LEDGER. PHASE 2 AWAITS.”
- Tab expansion: The four nOSh runtime tabs (STATUS, LAMBDA, LINK, SYS) remain at positions 1–4. Cartridge-specific tabs appear at positions 5+. CDR past the last cartridge tab wraps back to STATUS (the nOSh runtime tabs are always accessible).
- Auto-land: The nOSh runtime lands on the cartridge’s first tab (usually a mission board or operation summary).
Removing a Cartridge
Section titled “Removing a Cartridge”When a cartridge is physically removed:
- Hardware detect pin goes low.
- If mid-mission: Phase chain state is saved to SRAM (if the cartridge is cooperative). Cipher voice: “MODULE REMOVED. PHASE STATE PRESERVED.” (or “MODULE REMOVED. NO ACTIVE PHASE.” if no mission was running).
- Cartridge-specific tabs vanish.
- Immediate return to bare deck: STATUS tab appears.
- Cipher reflection: “AWAITING MODULE. YOUR PHASE CHAIN ENDURES.” (if a phase was suspended) or “MODULE SLOT EMPTY.” (if cartridge was idle).
This is the hot-swap mechanic: the bare deck is the transition state. An operator swaps from ICE BREAKER to BLACK LEDGER mid-contract by removing one and inserting the other. The phase chain persists. The operator returns to the bare deck for 2–3 seconds, then loads the next cartridge.
THE BARE DECK AS ONBOARDING DEVICE
Section titled “THE BARE DECK AS ONBOARDING DEVICE”An operator who spends 10 minutes on the bare deck before loading their first cartridge has already internalized the complete Deckline grammar:
| Grammar Element | Learned on Bare Deck | Later Applied in Cartridges |
|---|---|---|
| CDR traversal | Tab cycling (4 nOSh runtime tabs) | Mission board navigation, roster traversal |
| CAR entry | Interactive mode (settings, macros) | Cartridge-specific operations, tool selection |
| BACK return | Exit interactive mode | Undo/retreat in cartridge contexts |
| EVAL confirm | Refresh, generate, accept | Execute mission phase, deploy tool |
| INFO inspect | Details, statistics | Mission briefs, intel reports |
| QUOTE bookmark | Seed-capture CIPHER-LINE fragment | Mark critical intel, flag objectives |
| LAMBDA record | Macro recording | (Remains runtime-level; works in cartridges) |
| CONS combine | Merge macros | (Future: combine cartridge tools or merge mission chains) |
| NIL discard | Clear slots, factory reset | Abandon mission, reset phase |
| ATOM test | Check slot occupancy | Test mission status, verify inventory |
| EQ compare | Lambda comparison, deck-state diff | Compare two mission objectives, parallel analysis |
| APPLY deploy | (Inactive; no tools) | Primary cartridge action: deploy hacking tools, intrusion vectors, audit routines |
| LINK contact | Deck-to-deck ping, challenges | Multi-operator missions (future cartridges) |
| SYS system | Settings, diagnostics | Emergency override, system settings within cartridge context |
The bare deck teaches OODA: Observe (display state), Orient (understand meaning), Decide (navigate and select), Act (press keys). An operator cycles through this loop hundreds of times before a cartridge ever loads.
SOUND DESIGN ON THE BARE DECK
Section titled “SOUND DESIGN ON THE BARE DECK”The YM2149 PSG is active and audible at all times:
- Boot chord: Distinctive harmonic power-up sound (three voices: C, E, G at 440Hz register, 300ms).
- Key clicks: Subtle 8-bit tone on every key press (voice 1, 1000Hz, 50ms, ADSR envelope).
- Tab transition: Short melodic tone when CDR cycles (pitch rises as you cycle through tabs).
- Cipher generation: Soft ambient tone while Cipher renders a fragment on CIPHER-LINE (voice 2, low-frequency drone, 100–200Hz).
- Passage matched/complete: Resolution chord (three voices, major third interval, 200ms).
- Error/failure: Descending tone (voice 3, two-step minor descent, 100ms).
- Link ping: Distinctive bi-frequency ping (voice 1 + voice 2, 440Hz + 554Hz, 150ms).
- Bounty earned: Satisfying ascending resolution (voices 1+2+3, arpeggio, 400ms).
The bare deck’s audio is quieter and more ambient than cartridge operation. Cartridges may use the PSG for dialogue, alarm tones, or intense music. The bare deck uses it for ambient feedback and confirmation.
PLAYING THROUGH THE BARE DECK
Section titled “PLAYING THROUGH THE BARE DECK”Scenario: Fresh Operator, First Session
Section titled “Scenario: Fresh Operator, First Session”- Power on → first-boot sequence → enter handle “ROGUE”
- Boot into STATUS tab → see all zeros. CIPHER-LINE OLED above the keyboard lights with a first-boot greeting.
- CDR to LAMBDA → record a 3-step macro: CDR, CDR, CDR (tab cycling). Play it back. It works.
- CDR to LINK → press LINK (ping). No connection. See solo challenges.
- Press EVAL on DIAGNOSTIC challenge. Verify all 30 keys. Earn 5¤. New balance: 5¤.
- Return to bare deck. STATUS tab shows: CREDITS: 5¤. CIPHER-LINE murmurs a clipped reflection.
- CDR to SYS → adjust volume. Exit.
- Insert ICE BREAKER cartridge. Cipher voice greets on CIPHER-LINE. New tabs appear on the main grid. Begin first mission.
What the operator learned: Navigate (CDR), enter (CAR), record (LAMBDA), earn (bounties), explore (LINK). They haven’t loaded a cartridge yet, but they understand the device.
Scenario: Veteran Operator, Mid-Campaign
Section titled “Scenario: Veteran Operator, Mid-Campaign”- Power on → auto-land on STATUS tab. CIPHER-LINE whispers a rep-tier reflection.
- See active phase chain: “Phase 2/3: EXTRACTION → AUDIT”
- Reputation: 47. Credits: 2,840¤. Three cartridges registered.
- A CIPHER-LINE fragment drifts past: “the last cartridge awaits.” They catch it in their peripheral vision and use QUOTE to seed-capture it.
- CDR to LAMBDA → review custom macros (one for “boot check”, one for “extraction sequence”).
- CDR to LINK → connected to another operator. Start LFSR SYNC challenge. Both earn 10¤.
- Return to bare deck. Remove cartridge. Insert BLACK LEDGER. Phase chain resumes. CIPHER-LINE marks the swap.
What the operator experienced: The bare deck is home. It tracks their progress, celebrates their history, and mediates their tool changes.
DESIGN PHILOSOPHY SUMMARY
Section titled “DESIGN PHILOSOPHY SUMMARY”The bare deck is not a loading screen. It is:
- A genuine operational terminal: All four nOSh runtime tabs are useful, playable, and progress the operator’s reputation and credits.
- The operator’s identity anchor: The STATUS tab is their deck. Their handle, their reputation, their history.
- The fiction layer: The Cipher is the device’s voice. It speaks to them personally on CIPHER-LINE and evolves as they do.
- The grammar teacher: Every key except APPLY has a clear, consistent function. New operators learn rapidly.
- The hot-swap hub: When cartridges are swapped, the bare deck is the transition state. Phase chain state persists. The operator always returns here between missions.
- The economy foundation: nOSh runtime bounties keep the deck alive and generate credits even without a cartridge.
- A test of hardware: The DIAGNOSTIC challenge verifies that the device is functioning correctly.
The bare deck is where the KN-86 becomes personal.
VERSION HISTORY
Section titled “VERSION HISTORY”| Version | Date | Notes |
|---|---|---|
| 1.0 | 2026-04-10 | Playtest specification. Five-tab HUD, runtime bounties, hot-swap mechanics, onboarding grammar. |
| 1.1 | 2026-04-24 | CIPHER-LINE reconciliation: CIPHER tab removed from main grid; HUD is now four tabs (STATUS, LAMBDA, LINK, SYS). CIPHER CALIBRATION and CIPHER RELAY bounties dropped. Cipher voice now exclusively on CIPHER-LINE OLED (see ADR-0015). |
APPENDIX: STANDARD CIPHER TEMPLATES
Section titled “APPENDIX: STANDARD CIPHER TEMPLATES”These are legacy passage templates showing the Cipher’s voice identity by reputation tier. They predate the CIPHER-LINE reconciliation and read as multi-line passages; on the current device the Cipher engine selects individual clipped fragments from this space and renders them to CIPHER-LINE, one fragment at a time. The templates below are preserved as a reference for tone and vocabulary. See docs/architecture/KN-86-CIPHER-LINE-Grammar-Framework.md for the canonical clipped-fragment production grammar.
Tier 0 (0–9 reputation): Potential & Instruction
EMPTY SLOTS. CLEAN REPUTATION. / EVERYTHING AHEAD OF YOU. / THE BOARD IS QUIET. / INSERT A MODULE TO BEGIN OPERATIONS.
FIRST SESSION. YOU ARE LEARNING. / EACH CARTRIDGE TEACHES SOMETHING NEW. / THE LFSR WILL SPEAK TO YOU LATER.
WELCOME, OPERATOR. / THE SLOT ACCEPTS ONLY VERIFIED MODULES. / KINOSHITA ELECTRONICS CONSORTIUM. SINCE 1997.
Tier 1 (10–34 reputation): Reflection & Caution
YOU RAN EXTRACTION CONTRACTS. YOU UNDERSTAND INTRUSION. / THE GRID TEACHES PATTERNS. / REPUTATION FOLLOWS COMPETENCE.
PHASE CHAIN ACTIVE. MULTI-PHASE OPERATION DETECTED. / YOUR PERSISTENCE IS NOTED. / FINISH WHAT YOU STARTED.
FOURTEEN CONTACTS VIA LINK. YOU ARE NOT ALONE. / THE NETWORK REMEMBERS YOU.
Tier 2 (35+ reputation): Philosophy & Lore
FORTY-SEVEN REPUTATION. THE CONSORTIUM REMEMBERS YOU. / THERE ARE PATTERNS IN THE LFSR I HAVEN’T SHOWN YOU YET.
YOU ARE READY FOR THE LAST CARTRIDGE. / ASK ME ABOUT THE FOUNDING.
THE DEVICE WAS BUILT BY THOSE WHO BELIEVED IN OPERATORS LIKE YOU.
APPENDIX: KEY LAYOUT REFERENCE
Section titled “APPENDIX: KEY LAYOUT REFERENCE”LEFT HAND (Function Keys): RIGHT HAND (Phone-layout Numeric + Operators):┌─────────────────────┐ ┌──────────────────┐│ QUOTE CONS NIL LAMBDA │ 1 2 3 ÷ ││ INFO CAR APPLY SYS │ 4 5 6 × ││ LINK BACK CDR ATOM │ 7 8 9 − ││ ╔════════ EVAL ════════╗ EQ │ . 0 ENT + │└─────────────────────┘ └──────────────────┘Data grid is phone layout (1-2-3 top, 0 bottom-center) per ADR-0016 §5; see docs/ui-design/KN-86-Input-System-Architecture.md §1.
The EVAL key is a 3U-wide confirm bar. All other keys are 1U.
End of specification.