1
0
Files
h8-536-decoder/docs/pt2-iris-mblack-link-rom-trace.md
2026-05-27 21:37:50 +10:00

2.1 KiB

PT2 IRIS/M.BLACK LINK ROM Trace

This note records the ROM evidence for the bench-visible IRIS/M.BLACK LINK lamp.

Confirmed Host Trigger

The isolated bench trigger is:

00 00 13 40 00 09  ; command 0, selector 0x0013, value 0x4000

Command 0 mirrors nonzero selector writes into both E000[selector] and E800[selector], then queues the selector for internal processing. For this frame that means:

E000[0x0013] = 0x4000
E800[0x0013] = 0x4000

The current-table word is E800 + 2 * 0x0013 = H'E826.

Selector Handler

The selector dispatch table maps selector 0x0013 to H'2E06.

Focused linear decode:

H'2E06  BTST.W #15, @H'E826
        set/clear F791.6 and F713.4

H'2E1E  BTST.W #14, @H'E826
        set/clear F791.5 and F716.7

Bench labels:

Selector value ROM latch bits Visible result
0x8000 F791.6, F713.4 far-right SLAVE lamp
0x4000 F791.5, F716.7 IRIS/M.BLACK LINK lamp
0x0000 clears both bit groups through H'2E06 both latch groups clear

Other Trigger Path

There is also a local panel-input path:

F006.7 / F6DB.7 -> H'200E -> H'E826 bit14 -> loc_3E54 queues selector 0x0013

At H'200E, the ROM checks F6DB.7 and requires F731 <= 3. It then uses F791.5 as a current-state toggle:

  • if F791.5 is clear, it sets H'E826.14,
  • if F791.5 is set, it clears H'E826.14,
  • in both cases it calls loc_3E54 with selector 0x0013.

This is not a separate lamp driver. It feeds the same E800[0x0013].14 state consumed by the selector handler.

Practical Meaning

The strongest current model is:

  • CCU/host can drive the lamp directly by sending selector 0x0013 value 0x4000 through command 0.
  • The panel can also toggle/report the same state through a local input lane, but only when the relevant session/page gate is open.
  • No other decoded selector currently appears to directly set the same F791.5 plus F716.7 latch pair.

Generated semantics now label selector 0x0013, E800[0x0013], and the IRIS/M.BLACK LINK / SLAVE bit meanings so pseudo-code output does not leave this as a generic table write.