e30: S10F7 broadcast terminal display

Adds the last terminal-services message: a multi-line broadcast push
to all terminals, no reply.  Same TID+lines body as S10F5, W=0.

Generated via the catalog: data/messages.yaml schema entry +
auto-generated s10f7_terminal_display_broadcast / parse_s10f7.

Test round-trips TID and a 3-line broadcast through the builder
and parser, confirms W=0.

COMPLIANCE.md updated: S10F7 row in §5 added; §8 "out of scope"
entry removed.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-06-09 11:47:02 +02:00
parent d0c7fb71b6
commit 2f0a4ba339
3 changed files with 31 additions and 1 deletions
+16
View File
@@ -1329,6 +1329,22 @@ messages:
builder: s10f6_terminal_display_multi_ack
body: {kind: scalar, item_type: BINARY_BYTE, enum: TerminalAck, param: ack}
# S10F7 — Terminal Display, Broadcast (host -> equipment, no reply).
# E5: a one-way push of a multi-line broadcast message to all terminals.
# Same TID + LINES shape as S10F5 but no ack expected (W=0).
- id: S10F7
stream: 10
function: 7
builder: s10f7_terminal_display_broadcast
parser: parse_s10f7
body:
kind: list
struct_name: TerminalDisplayBroadcast
fields:
- {name: tid, shape: {kind: scalar, item_type: BINARY_BYTE}}
- name: lines
shape: {kind: list_of, element: {kind: scalar, item_type: ASCII}}
# =====================================================================
# S12 — Wafer Maps (E5 §13).
#