Physical capture¶
Two full VS matches of Samurai Shodown 2 across two consoles, captured on a logic analyzer, then decoded. The ground-truth wire data.
Setup¶
| Analyzer | 8-channel, 24 MHz sample rate |
| Probing | grabbers direct on the mainboard near CON2 (the sniffer PCB was not used) |
| Ground | MBT− battery terminal |
| Line format | 19200 8N1, idle-high, non-inverted — 100% valid framing |
MBT−.
Nothing soldered.
0030 is the catalog
word in the identity handshake (FC 01 00 30).Channels¶
| Channel | Signal |
|---|---|
| Ch2 | Player 1 data — FC requester, sends F8 <p1> <p2> |
| Ch6 | Player 2 data — FD responder, sends F8 00 <p2> |
| Ch0 / Ch1 | /RTS / /CTS (flow control / noisy) |
| Ch3–5, 7 | idle |
Ch2 sent FC ~103 ms before Ch6 → it won the requester (P1) role.
What only the capture gave¶
- Wall-clock timing: 33.39 ms/tick (~30 Hz) for
F0heartbeat andF8gameplay. - Which physical channel is P1 vs P2, and how role arbitration resolves.
- On-wire line format (19200 8N1) verified, not assumed.
- The input mirror between directions — later explained as the combined reply
F8 <p1> <p2>.
Artifacts¶
logic_analysis/ngpc_samurai2_vs.sal— raw capturelogic_analysis/decoded_ch2_ch6.csv— 23,653 decoded frameslogic_analysis/PROTOCOL_FINDINGS.md— capture ↔ ROM reconciliation
Safety
Consoles off first; establish ground + continuity before probing; 3.3 V only; never drive a pin until its direction is known.