From e3897a8e2811ac4b9d8d5284ffdf7806f3782cb5 Mon Sep 17 00:00:00 2001
From: Cyd
Date: Thu, 16 Jul 2026 21:40:34 -0500
Subject: [PATCH] =?UTF-8?q?Correct=20=C2=A706:=20the=20emit=20map=20is=20t?=
=?UTF-8?q?he=20shared=20standard=20screen=20program?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cross-checks against the vendor source settle the semantics: the 0x3xx words
are pixel-memory bit addresses / opcode fields (EOF.S emits them as hardcoded
constants; DIVPXMAP.H maps dvpx_* bit addresses 0-207 incl. eofr/g/b at
184/192/200), 0xec00 is a hardcoded control constant (EOF.S:2313), and the
whole 2,541-word payload set is 98.98% identical between trek and klngvid =
the standard screen program shared across captures. §06 now presents the
render as an emit-stream structural map with the demo-specific geometry still
to be located (beyond the 0x8014000-0x8018000 window; bin pages / far heap are
the candidates). The EOF.S<->EOF.C correlation method for the exact per-macro
decode is proven (send_em catalog: 30 emit sites with inline constants).
Co-Authored-By: Claude Opus 4.8
---
emulator/firmware-decomp/render-readout.html | 25 ++++++++++++--------
1 file changed, 15 insertions(+), 10 deletions(-)
diff --git a/emulator/firmware-decomp/render-readout.html b/emulator/firmware-decomp/render-readout.html
index 83477f3..4c45536 100644
--- a/emulator/firmware-decomp/render-readout.html
+++ b/emulator/firmware-decomp/render-readout.html
@@ -362,20 +362,25 @@
- 06 First frame from a live scene — the Star Trek demo
+ 06 A live scene emits — the Star Trek demo
The archive's trek capture — unreleased Star Trek
material — now replays and draws. After the dual-instruction-mode fix, its full
pipeline runs on the emulated i860: classify, LOD select, rasterise, and emit compiled
- micro-code per 64×128 tile. Below is that frame, assembled by reading the emit stream
- back out of DRAM: 21 payload blocks, 124 scanline spans, each block a primitive of
- the scene. This is a first-approximation decode (the span/edge field scaling is
- still being pinned), drawn from the board's own compiled render program — the deepest
- read-out of this hardware yet.
+ micro-code per 64×128 tile. Below is a structural map of that emit stream, read
+ back out of DRAM: 21 payload blocks, each a compiled primitive program — colors
+ distinguish blocks, position reflects each program's instruction fields. It is not yet
+ the screen image: cross-checking against the board's own source
+ (EOF.S / DIVPXMAP.H) shows the fields are
+ pixel-memory bit addresses and coefficients, whose exact per-macro layout is the decode in
+ progress — and this block set turns out to be the standard screen program shared
+ across captures (98.98% identical between the trek and Klingon demos), with the demo-specific
+ geometry still to be located in memory. What it proves stands: the full pipeline runs, the
+ emit stream is readable, and the compiled programs are being captured one by one.
-
decoded from the compiled emit stream · first approximation
-
-
trek, draw 1–300 (static showcase scene) — every mark is a span
- the firmware's rasteriser emitted; colors distinguish payload blocks (primitives).
+
emit-stream structure · exact frame decode in progress
+
+
trek, draws 1–300 (compile-once showcase scene) — each colored
+ run is one compiled primitive program's field pattern in the emit stream.