relay on 127.0.0.1:60585
[A] >>> warp on
(C:$eea9) (C:$eea9) 
[B] >>> warp on
(C:$ee5a) (C:$ee5a) 
[A] >>> break 0800
BREAK: 1  C:$0800  (Stop on exec)
(C:$eea9) 
[A] loading under warp ...
[A] #1 (Stop on  exec 0800)   48/$030,  58/$3a
.C:0800  4C 6C 0A    JMP $0A6C      - A:05 X:00 Y:02 SP:fe .V-B...C   73306538
(C:$0800) 
[A] >>> del
Deleting all checkpoints
(C:$0800) 
[A] >>> resourceset "WarpMode" "0"
Unknown resource "WarpMode".
(C:$0800) 
[A] >>> resourceset "Warp" "0"
Unknown resource "Warp".
(C:$0800) 
[A] >>> resourceset "WarpModeEnabled" "0"
Unknown resource "WarpModeEnabled".
(C:$0800) 
[B] >>> break 0800
BREAK: 1  C:$0800  (Stop on exec)
(C:$ee5a) 
[B] loading under warp ...
[B] #1 (Stop on  exec 0800)   15/$00f,  43/$2b
.C:0800  4C 6C 0A    JMP $0A6C      - A:56 X:00 Y:02 SP:fe .V-B...C   73321473
(C:$0800) 
[B] >>> del
Deleting all checkpoints
(C:$0800) 
[B] >>> resourceset "WarpMode" "0"
Unknown resource "WarpMode".
(C:$0800) 
[B] >>> resourceset "Warp" "0"
Unknown resource "Warp".
(C:$0800) 
[B] >>> resourceset "WarpModeEnabled" "0"
Unknown resource "WarpModeEnabled".
(C:$0800) 
[A] >>> warp off
(C:$c50d) 
[A] >>> warp
Warp mode is off.
(C:$c50d) 
[A] Warp mode is off.
(C:$c50d)
[B] >>> warp off
(C:$c23a) 
[B] >>> warp
Warp mode is off.
(C:$c23a) 
[B] Warp mode is off.
(C:$c23a)
[A] >>> screenshot "/home/scott/claude/modemwars/swiftlink/shots/rtf201aMenu.png" 2
(C:$60a1) 
[A] shot /home/scott/claude/modemwars/swiftlink/shots/rtf201aMenu.png
[B] >>> screenshot "/home/scott/claude/modemwars/swiftlink/shots/rtf201bMenu.png" 2
(C:$4db1) 
[B] shot /home/scott/claude/modemwars/swiftlink/shots/rtf201bMenu.png
[A] >>> m 91d5 91d5
(C:$c631) 
[A] >>> m 91d5 91d5
>C:91d5  01                                                   .
(C:$91d6) 
[A] menu row = 1
[A] >>> m 91d5 91d5
(C:$c4fa) >C:91d5  00                 
[A] menu row = 0
[B] >>> m 91d5 91d5
(C:$fd64) >C:91d5  01                 
[B] menu row = 1
[B] >>> m 91d5 91d5
(C:$c86d) 
[B] >>> m 91d5 91d5
>C:91d5  00                                                   .
(C:$91d6) 
[B] menu row = 0
[A] >>> m e013 e014
>C:e013  b2 e3                                                ..
(C:$e015) 
[A] the module's keyboard vector is still [178, 227] - waiting
[A] >>> m e013 e014
>C:e013  b7 0d                                                ..
(C:$e015) 
[A] >>> m e03b e047
>C:e03b  00 00 00 00  00 00 00 00  00 00 44 ff  48            ..........D.H
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  00 00 00 00                                          ....
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  00 30 00 18                                          .0..
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  00                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=0 isLinkActive=0 linkErrorCount=72 linkStatus=$00 baudIndex=6 $DE03=$18 $DE01=$30 $DE02=$00 bitPeriodLo=$18 statusSave=$00 cmdShadow=$00 txCharActive=$00 uartPending=$00 syncRound=$00 lastHotkey=$FF lockout=0
[A] 2400 baud selected before the link was opened
[B] >>> m e013 e014
>C:e013  b7 0d                                                ..
(C:$e015) 
[B] >>> m e03b e047
>C:e03b  00 00 00 00  00 00 00 00  00 00 44 ff  48            ..........D.H
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  00 00 00 00                                          ....
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  00 30 00 18                                          .0..
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  00                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [B] phase=0 isLinkActive=0 linkErrorCount=72 linkStatus=$00 baudIndex=6 $DE03=$18 $DE01=$30 $DE02=$00 bitPeriodLo=$18 statusSave=$00 cmdShadow=$00 txCharActive=$00 uartPending=$00 syncRound=$00 lastHotkey=$FF lockout=0
[B] 2400 baud selected before the link was opened
[A] >>> m e5be e5be
(C:$0950) >C:e5be  
[A] >>> m e5be e5be
00                                                   .
(C:$e5bf) 
[A] >>> m e5be e5be
>C:e5be  00                                                   .
(C:$e5bf) >C:e5be  00                                                   .
(C:$e5bf) 
[relay] connection 1
[A] >>> m e5be e5be
(C:$6637) >C:e5be  09           
[A] link opened after 2 attempt(s), command register = $09
[B] >>> m e5be e5be
(C:$0950) >C:e5be  00                 
[B] >>> m e5be e5be
(C:$1be7) 
[B] >>> m e5be e5be
>C:e5be  00                                                   .
(C:$e5bf) >C:e5be  00                                                   .
(C:$e5bf) 
[relay] connection 2
[B] >>> m e5be e5be
(C:$c8ee) 
[B] >>> m e5be e5be
>C:e5be  09                                                   .
(C:$e5bf) 
[B] link opened after 3 attempt(s), command register = $09
[A] >>> m e040 e040
>C:e040  02                                                   .
(C:$e041) 
[B] >>> m e040 e040
>C:e040  01                                                   .
(C:$e041) 
  phases: {'A': 2, 'B': 1}
[A] >>> m e040 e040
>C:e040  03                                                   .
(C:$e041) 
[B] >>> m e040 e040
>C:e040  03                                                   .
(C:$e041) 
  phases: {'A': 3, 'B': 3}
both in the packet phase: True ({'A': 3, 'B': 3})
[A] >>> screenshot "/home/scott/claude/modemwars/swiftlink/shots/rtf202aLinked.png" 2
(C:$e3ce) 
[A] shot /home/scott/claude/modemwars/swiftlink/shots/rtf202aLinked.png
[B] >>> screenshot "/home/scott/claude/modemwars/swiftlink/shots/rtf202bLinked.png" 2
(C:$e3e3) 
[B] shot /home/scott/claude/modemwars/swiftlink/shots/rtf202bLinked.png
[A] >>> trace exec $e403
TRACE: 1  C:$e403  (Trace exec)
(C:$e3e8) 
[A] >>> break
TRACE: 1  C:$e403  (Trace exec)
(C:$e3e8) 
[B] >>> trace exec $e403
TRACE: 1  C:$e403  (Trace exec)
(C:$1252) 
[B] >>> break
TRACE: 1  C:$e403  (Trace exec)
(C:$1252) 
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 01 ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  00 98 54 09                                          ..T.
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  54 10 09 18                                          T...
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  02                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 02 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  00 98 0e 09                                          ....
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  0e 10 09 18                                          ....
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  08                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$02 lastHotkey=$FF lockout=0
  [B] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$08 lastHotkey=$FF lockout=0
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 02 00 00  00 02 01 ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  00 98 00 09                                          ....
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  00 10 09 18                                          ....
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  0a                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 02 00 00  00 02 01 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  00 98 6b 09                                          ..k.
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  6b 10 09 18                                          k...
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  09                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=2 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$0A lastHotkey=$FF lockout=0
  [B] phase=2 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$09 lastHotkey=$FF lockout=0
[A] >>> stopwatch
Stopwatch:  247109006
(C:$1301) 
[B] >>> stopwatch
Stopwatch:  177139170
(C:$12a6) 
[A] >>> stopwatch
Stopwatch:  324720306
(C:$1301) 
[B] >>> stopwatch
Stopwatch:  254442761
(C:$12a6) 

=== window '2400 baud [1/3]': 75.17 s wall ===
  [A] 77611300 emulated cycles = 75.89 emulated seconds = 101.0% of real time
  [B] 77303591 emulated cycles = 75.59 emulated seconds = 100.6% of real time
  conn0 -> peer: 675 bytes in 75.17 s = 8.98 bytes/s = 90 bit/s of 8N1 line time; wire: {'bytes': 675, 'zeroRuns8': 0, 'longestZeroRun': 1, 'leadBytes55': 253}
  conn1 -> peer: 675 bytes in 75.17 s = 8.98 bytes/s = 90 bit/s of 8N1 line time; wire: {'bytes': 675, 'zeroRuns8': 0, 'longestZeroRun': 0, 'leadBytes55': 253}
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 13 ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  00 98 54 09                                          ..T.
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  54 10 09 18                                          T...
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  07                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 01 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  03                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  01 98 55 05                                          ..U.
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  55 10 05 18                                          U...
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  02                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$07 lastHotkey=$FF lockout=0
  [B] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$05 bitPeriodLo=$18 statusSave=$98 cmdShadow=$05 txCharActive=$01 uartPending=$03 syncRound=$02 lastHotkey=$FF lockout=0
  transmitter deadlock at this edge: {'A': False, 'B': False}
[A] >>> stopwatch
Stopwatch:  331917301
(C:$0dd7) 
[B] >>> stopwatch
Stopwatch:  261314950
(C:$11ae) 
[A] >>> stopwatch
Stopwatch:  409511505
(C:$12e5) 
[B] >>> stopwatch
Stopwatch:  338601445
(C:$12a4) 

=== window '2400 baud [2/3]': 75.16 s wall ===
  [A] 77594204 emulated cycles = 75.87 emulated seconds = 101.0% of real time
  [B] 77286495 emulated cycles = 75.57 emulated seconds = 100.5% of real time
  conn0 -> peer: 674 bytes in 75.16 s = 8.97 bytes/s = 90 bit/s of 8N1 line time; wire: {'bytes': 674, 'zeroRuns8': 0, 'longestZeroRun': 0, 'leadBytes55': 253}
  conn1 -> peer: 675 bytes in 75.16 s = 8.98 bytes/s = 90 bit/s of 8N1 line time; wire: {'bytes': 675, 'zeroRuns8': 0, 'longestZeroRun': 1, 'leadBytes55': 253}
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 12 ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  00 98 56 09                                          ..V.
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  56 10 09 18                                          V...
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  02                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 00 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  03                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  01 98 55 05                                          ..U.
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  55 10 05 18                                          U...
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  06                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$02 lastHotkey=$FF lockout=0
  [B] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$05 bitPeriodLo=$18 statusSave=$98 cmdShadow=$05 txCharActive=$01 uartPending=$03 syncRound=$06 lastHotkey=$FF lockout=0
  transmitter deadlock at this edge: {'A': False, 'B': False}
[A] >>> stopwatch
Stopwatch:  416793976
(C:$1301) 
[B] >>> stopwatch
Stopwatch:  345559110
(C:$12a6) 
[A] >>> stopwatch
Stopwatch:  494405276
(C:$1301) 
[B] >>> stopwatch
Stopwatch:  422862702
(C:$12d1) 

=== window '2400 baud [3/3]': 75.18 s wall ===
  [A] 77611300 emulated cycles = 75.89 emulated seconds = 100.9% of real time
  [B] 77303592 emulated cycles = 75.59 emulated seconds = 100.5% of real time
  conn0 -> peer: 675 bytes in 75.18 s = 8.98 bytes/s = 90 bit/s of 8N1 line time; wire: {'bytes': 675, 'zeroRuns8': 0, 'longestZeroRun': 1, 'leadBytes55': 253}
  conn1 -> peer: 675 bytes in 75.18 s = 8.98 bytes/s = 90 bit/s of 8N1 line time; wire: {'bytes': 675, 'zeroRuns8': 0, 'longestZeroRun': 0, 'leadBytes55': 253}
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 0b ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  00 98 56 09                                          ..V.
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  56 10 09 18                                          V...
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  02                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 02 00 00  00 02 01 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  00 98 00 09                                          ....
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  00 10 09 18                                          ....
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  0a                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$02 lastHotkey=$FF lockout=0
  [B] phase=2 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$0A lastHotkey=$FF lockout=0
  transmitter deadlock at this edge: {'A': False, 'B': False}
[A] >>> screenshot "/home/scott/claude/modemwars/swiftlink/shots/rtf203aAfterFirst.png" 2
(C:$c8ee) 
[A] shot /home/scott/claude/modemwars/swiftlink/shots/rtf203aAfterFirst.png
[B] >>> screenshot "/home/scott/claude/modemwars/swiftlink/shots/rtf203bAfterFirst.png" 2
(C:$1249) 
[B] shot /home/scott/claude/modemwars/swiftlink/shots/rtf203bAfterFirst.png
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 02 00 00  00 02 01 ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  06 18                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  00 98 05 09                                          ....
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  05 10 09 18                                          ....
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  07                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 02 00 00  00 02 01 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  00 15                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  00 98 00 09                                          ....
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  00 10 09 15                                          ....
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  07                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=2 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=6 $DE03=$18 $DE01=$10 $DE02=$09 bitPeriodLo=$18 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$07 lastHotkey=$FF lockout=0
  [B] phase=2 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=0 $DE03=$15 $DE01=$10 $DE02=$09 bitPeriodLo=$15 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$07 lastHotkey=$FF lockout=0
  the hot key did not take on both machines - falling back to the monitor
[A] >>> sidefx on
(C:$118d) 
[A] >>> > de03 15
(C:$118d) 
[A] >>> sidefx off
(C:$118d) 
[A] >>> > e055 00
(C:$118d) 
[A] >>> > e056 15
(C:$118d) 
[B] >>> sidefx on
(C:$1283) 
[B] >>> > de03 15
(C:$1283) 
[B] >>> sidefx off
(C:$1283) 
[B] >>> > e055 00
(C:$1283) 
[B] >>> > e056 15
(C:$1283) 
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 03 ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  03                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  00 15                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  01 90 ff 05                                          ....
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  ff 00 05 15                                          ....
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  04                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 02 00 00  00 02 01 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  00                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  00 15                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  00 98 00 09                                          ....
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  00 10 09 15                                          ....
(C:$de04) 
[B] >>> m eab7 eab7
>C:eab7  05                                                   .
(C:$eab8) 
[B] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
  [A] phase=3 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=0 $DE03=$15 $DE01=$00 $DE02=$05 bitPeriodLo=$15 statusSave=$90 cmdShadow=$05 txCharActive=$01 uartPending=$03 syncRound=$04 lastHotkey=$FF lockout=0
  [B] phase=2 isLinkActive=1 linkErrorCount=0 linkStatus=$F8 baudIndex=0 $DE03=$15 $DE01=$10 $DE02=$09 bitPeriodLo=$15 statusSave=$98 cmdShadow=$09 txCharActive=$00 uartPending=$00 syncRound=$05 lastHotkey=$FF lockout=0
switched to 300 baud by direct monitor write of $15 to $DE03, $E055 and $E056
[A] >>> m e040 e040
>C:e040  03                                                   .
(C:$e041) 
[B] >>> m e040 e040
>C:e040  02                                                   .
(C:$e041) 
  phases: {'A': 3, 'B': 2}
[A] >>> m e040 e040
>C:e040  03                                                   .
(C:$e041) 
[B] >>> m e040 e040
>C:e040  02                                                   .
(C:$e041) 
  phases: {'A': 3, 'B': 2}
[A] >>> m e040 e040
>C:e040  03                                                   .
(C:$e041) 
[B] >>> m e040 e040
>C:e040  03                                                   .
(C:$e041) 
  phases: {'A': 3, 'B': 3}
back in the packet phase after the switch: True ({'A': 3, 'B': 3})
[A] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 02 ff  00            .............
(C:$e048) 
[A] >>> m e0a5 e0a5
>C:e0a5  01                                                   .
(C:$e0a6) 
[A] >>> m e055 e056
>C:e055  00 15                                                ..
(C:$e057) 
[A] >>> m e5bb e5be
>C:e5bb  01 90 55 05                                          ..U.
(C:$e5bf) 
[A] >>> m de00 de03
>C:de00  55 00 05 15                                          U...
(C:$de04) 
[A] >>> m eab7 eab7
>C:eab7  04                                                   .
(C:$eab8) 
[A] >>> m 0b7d 0b7d
>C:0b7d  00                                                   .
(C:$0b7e) 
[B] >>> m e03b e047
>C:e03b  01 f8 f8 00  00 03 00 00  00 02 02 ff  00            .............
(C:$e048) 
[B] >>> m e0a5 e0a5
>C:e0a5  03                                                   .
(C:$e0a6) 
[B] >>> m e055 e056
>C:e055  00 15                                                ..
(C:$e057) 
[B] >>> m e5bb e5be
>C:e5bb  01 90 55 05                                          ..U.
(C:$e5bf) 
[B] >>> m de00 de03
>C:de00  55 00 05 15                                          U...
(C:$de04) 
[B] >>> m eab7 eab7

[relay] conn0 total 5378 bytes, tail b'\x05kU\xedTU\xedTU\x05kU\xedTU\x05kU\xeeUU\x0etU\npU\npU\npU\npU\npU\npU\npU\npU\npU\npU\npU\npU'
[relay] conn1 total 4611 bytes, tail b'U\xedTU\xedTU\xedTU\xedTU\xedTU\xedTU\xedTU\xedTU\xedTU\xedTU\xedTU\xedTU\x05kU\xedTU\xedTU\xedTU\x05kU\xedTU\xedTU\x05k'
Traceback (most recent call last):
  File "/home/scott/claude/modemwars/swiftlink/testRealtime.py", line 543, in <module>
    main()
  File "/home/scott/claude/modemwars/swiftlink/testRealtime.py", line 488, in main
    results[secondKey] = measureSeries(relay, sessions, seconds,
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/scott/claude/modemwars/swiftlink/testRealtime.py", line 157, in measureSeries
    edge = [snapshot(session, tag) for session, tag in sessions]
            ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/scott/claude/modemwars/swiftlink/testRealtime.py", line 368, in snapshot
    sync = readRange(session, 0xEAB7, 1)        # packetProtocolState / syncRoundCounter
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/scott/claude/modemwars/swiftlink/testRealtime.py", line 266, in readRange
    out = command(session, f"m {start:04x} {start + count - 1:04x}")
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/scott/claude/modemwars/swiftlink/testRealtime.py", line 93, in command
    session.sock.sendall((text + "\n").encode())
BrokenPipeError: [Errno 32] Broken pipe
