psx.wiki

Peripheral Registers and Bus Delays: Difference between revisions

Revision as of 05:27, 23 October 2026
RemmyLee
(GTE Lighting Input Latency: split the cross-link sentence)
Revision as of 05:40, 23 October 2026
RemmyLee
(Hardware tests: 15 more test pages (CPU, DMA, SPU, GPU, MDEC, CD-ROM, bus), each with See also links to the pages that measure the same parts)
Line 1:Line 1:
+---
+title: Peripheral Registers and Bus Delays
+type: test
+summary: Measures SIO1 and SIO0 status timing, root counter target and hblank behavior, register 1F8010F8h, DMA2 chopping, DMA4 block sizes, the COM and write delays and the BIOS read delay.
+category: Hardware tests
+info: Machine = SCPH-5501
+info: Program = followup16
+---
+
+## Overview
+
+Each group reads I_STAT, GPUSTAT, SPUSTAT, JOY_STAT and DICR twice back to back and once more 1000 cycles later before its own rows. Root counter 2 counts system clock cycles for every timing. Every group puts back the registers it writes, and the four groups that write delay registers or 1F8010F8h come last.[^run]
+
+Table: Groups
+
+| Tag | Rows |
+| --- | --- |
+| S1M | SIO1 MISC, and SIO1 STAT bits 0 to 2 over a transmitted byte, with nothing attached |
+| T1Z | Root counter 1 with target 0 in mode 00D8h, written after seven other states |
+| T2W | Counter writes to a stopped root counter 2 with target 8000h |
+| T1H | Root counter 1 on hblank after a mode write, and reads straight after a counter write |
+| F8R | Register 1F8010F8h around DMA6 and DMA2 transfers |
+| CH1 | DMA2 SyncMode 1 transfers of 8192 bytes in blocks of 1 to 128 words |
+| CH2 | DMA2 SyncMode 0 transfers of 8192 bytes with chopping |
+| GT1 to GT4 | GTE opcodes with no documented command, each issued straight after a documented command |
+| RXI | SIO0 receive interrupt modes 0 to 3 with the controller in slot 1 |
+| D4B | DMA4 SyncMode 1 transfers to SPU RAM by block size and by bits 24 to 27 of the SPU delay register |
+| COM | SPU and POST stores under COM0, COM1, bit 8 and the write delay |
+| BRD | BIOS ROM reads at read delay 0 to 3 |
+| F8W | Writes to register 1F8010F8h |
+
+See also:
+
+- [DMA Chopping](/tests/dma-chopping/)
+- [GTE Undocumented Opcodes](/tests/gte-undocumented-opcodes/)
+- [Root Counter Behavior](/tests/timers2/)
+- [Root Counter Mode Combinations](/tests/timers3/)
+- [Interrupt Controller and Serial Ports](/tests/irqsio/)
+- [Memory Control and Bus Timing](/tests/memctl/)
+
+## Results
+
+### SIO1
+
+SIO1 MISC (1F80105Ch) read DFFDh on all four reads before the program touched any other register. It read DFFDh again at the end of the S1M group. With MODE 004Dh and BAUD 0088h, a byte written to SIO1 cleared STAT bits 0 to 2. TX ready returned 131 cycles after the write and TX idle 1,462 cycles after it. A second byte written at any of 10 points between those two times brought TX ready back at 1,512 to 1,525 cycles and TX idle at 2,872 to 2,886 cycles after the first write.[^run]
+
+Table: SIO1 TX timing at BAUD 0020h
+
+| Factor | Bits | Cycles to TX ready | Cycles to TX idle |
+| --- | --- | --- | --- |
+| MUL1 | 5 | 55 | 286 |
+| MUL1 | 8 | 51 | 350 |
+| MUL16 | 5 | 520 | 4,095 |
+| MUL16 | 6 | 520 | 4,622 |
+| MUL16 | 7 | 524 | 5,119 |
+| MUL16 | 8 | 520 | 5,642 |
+| MUL64 | 5 | 2,050 | 16,386 |
+| MUL64 | 8 | 2,050 | 22,540 |
+
+Every byte in the table was sent with 1 stop bit. Under MUL16 each further data bit added about 512 cycles to TX idle, which is 20h x 16, and under MUL64 about 2,048, which is 20h x 64. Under MUL1 the steps were uneven: 286, 286, 333 and 350 cycles for 5 to 8 bits.[^run]
+
+### SIO0 Receive Interrupt
+
+The program sent 01h 42h and six 00h bytes to slot 1, 2400 cycles apart, and read none of the replies. In receive interrupt mode 0, JOY_STAT read 207h and I_STAT bit 7 read 1 after the first byte. In modes 1, 2 and 3 JOY_STAT read 007h and bit 7 read 0 until the 2nd, 4th and 8th byte, and then 207h and 1. Read out afterwards, the FIFO gave FF 41 5A FF FF FF FF FF in every mode.[^run]
+
+### Root Counters
+
+Root counter 1 with target 0 in mode 00D8h (reset at target, IRQ at target, toggle, repeat) raised its interrupt at once after most earlier states. After mode 0000h, a toggle run, or a counter write of 0 or 1234h, I_STAT bit 5 read 1 and the mode read 08D8h at 0, 100 and 1000 cycles after the write. After a pulse run in mode 0058h, and when written straight after the last pass, I_STAT bit 5 read 0 and the mode read 0CD8h. All four passes gave the same values.[^run]
+
+Root counter 2 was stopped with target 8000h, and the mode was read first to clear bits 11 and 12. In mode 0001h the counter held each value written both at once and 500 cycles later. A write of 8000h or FFFFh set bit 11, and writes of 7FFFh, 7FFEh, 0 and 8001h did not. In mode 0009h, which resets at target, a write of 8000h set bit 11 and the counter read 0. A write of FFFFh in that mode left bit 11 clear.[^run]
+
+Root counter 1 on hblank counted 16 lines in 34,412 cycles, so a line takes 2,151 cycles. The mode was written at offsets from 0 to 2,016 cycles after a tick. At every offset the first tick after the write came 2,128 to 2,156 cycles after the tick before it. The mode write therefore did not move the counter's line timing. The second tick came about 2,150 cycles after the first.[^run]
+
+After a write of 1234h to root counter 0 or 2, counting system clock cycles in mode 0000h, two halfword loads back to back read 1234h at once and after 1 NOP. After k NOPs from 2 to 8 the first load read 1234h plus k minus 1. The second load read 4 more than the first in every row.[^run]
+
+### Register 1F8010F8h
+
+Register 1F8010F8h read 7FEB1A23h when the program started, and 1F8010FCh read 00FFFFFFh throughout. After a DMA6 ordering table clear of 256 entries it read 7FE32A63h, and after a DMA2 list of 1024 empty nodes 7FE72A23h. During the list the program read it eight times 1000 cycles apart, and every read gave 67E72A23h. LHU and LBU returned the halves and bytes of the LW value.[^run]
+
+Stores of 0 and of FFFFFFFFh to 1F8010F8h left it at 7FEB1A23h. It changed only with the DMA transfers, as in the F8R group, and writing the value back after them left it at 7FE72A23h.[^run]
+
+### DMA2 Chopping
+
+Each transfer moves 8192 bytes to VRAM. In SyncMode 1 the time fell as the block size rose, and a SyncMode 0 transfer without chopping took 2,260 cycles.[^run]
+
+Table: DMA2 SyncMode 1 cycles by block size
+
+| Words a block | Cycles |
+| --- | --- |
+| 1 | 22,869 |
+| 2 | 12,553 |
+| 4 | 7,360 |
+| 8 | 4,826 |
+| 16 | 3,601 |
+| 32 | 2,993 |
+| 64 | 2,630 |
+| 128 | 2,424 |
+
+With chopping, the DMA window and the CPU window set the time between them. With a DMA window of 1 word the transfer took 18,798 cycles at a CPU window of 1 and 81,928 at 64. With a DMA window of 128 words it took 2,347 at a CPU window of 1 and 4,206 at 128.[^run]
+
+Table: DMA2 SyncMode 0 cycles with chopping
+
+| DMA window (words) | CPU window 1 | CPU window 8 | CPU window 128 |
+| --- | --- | --- | --- |
+| 1 | 18,798 | 30,894 | 80,043 |
+| 4 | 5,868 | 9,420 | 70,720 |
+| 16 | 3,136 | 4,064 | 19,277 |
+| 64 | 2,466 | 2,680 | 6,396 |
+| 128 | 2,347 | 2,451 | 4,206 |
+
+### DMA4 Block Size
+
+With the SPU delay register 1F801014h at 200931E1h as found, a DMA4 SyncMode 1 transfer of about 256 words to SPU RAM took 15,823 to 18,296 cycles for blocks of 1 to 16 words. Blocks of 32 words took 8,181 to 8,212 cycles. The time did not fall steadily with block size. Blocks of 4 words took the longest at 18,077 to 18,296 cycles, and blocks of 12 words took the shortest at 15,823 to 15,829.[^run]
+
+Bits 24 to 27 of the SPU delay register changed the time of a transfer in blocks of 4 words, and each group of three values gave one time.[^run]
+
+Table: DMA4 cycles for blocks of 4 words by bits 24 to 27
+
+| Bits 24 to 27 | Cycles |
+| --- | --- |
+| 0 to 2 | 18,063 to 18,347 |
+| 3 to 5 | 19,427 to 19,529 |
+| 6 to 8 | 21,637 to 21,732 |
+| 9 to Fh | 24,180 to 24,325 |
+
+### COM and Write Delays
+
+The program timed 100 turns of an SPU KOFF halfword store and of a byte store to the POST register at 1F802041h, with COM_DELAY at 00031125h, the SPU delay at 200931E1h and Expansion 2 at 00070777h as found. The write delay is bits 0 to 3 of the device's own delay register, and bit 8 is the recovery bit of that register.[^run]
+
+The SPU store took 446 to 456 cycles at write delays 0 and 1, then 531, 628 and 727 at delays 2, 3 and 4. COM0 0 to 2, COM1 and bit 8 made no difference, except that COM0 2 with bit 8 set moved each step one delay earlier: 450, 530, 627, 726 and 817. The POST store took 646 cycles at write delays 0 to 3 and 722 at 4 with COM1 0, and with COM1 1 it took 722 already at delay 3 and 820 at delay 4. COM0 2 with bit 8 set again moved the steps one delay earlier, and with COM1 1 the store took 918 cycles at delay 4.[^run]
+
+### BIOS Read Delay
+
+The BIOS delay register read 0013243Fh as found, which is read delay 3. At read delays 2 and 3 the first 32 bytes of the BIOS read correctly by LW, LHU and LBU. The first two words read 3C080013h and 3508243Fh. At read delay 0 every LW read FFFFFFFFh, every LBU FFh, and LHU FFFFh apart from a few halfwords of FFF5h and FFAFh. At read delay 1 the low byte of every LW read FFh and the other bytes did not match the ROM, for example 08001BFFh at BFC00000h, and every LBU read FFh.[^run]
+
+## Runs
+
+### 3 October 2026
+
+[00RUN.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/00RUN.txt)
+
+```
+===== 00 RUN | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+16 tests
+A chain program, linked at 80010000
+Saved on the card in slot 2, from image 1
+COP0 at start: BPC 00000000 BDA 00000000 TAR BFC02BAC DCIC 00000000 BadVaddr 00000480 BDAM 00000000
+BPCM 00000000 SR 40000000 Cause 00000020 EPC 8010C910 PRId 00000002
+```
+
+[01S1M.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/01S1M.txt)
+
+```
+===== 01 S1M F16 SIO1 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+SIO1 MISC (1F80105Ch) read four times before anything else: DFFD DFFD DFFD DFFD
+1F8010F8h as found: lw 7FEB1A23, lhu +0 1A23 +2 7FEB, lbu 23 1A EB 7F; 1F8010FCh lw 00FFFFFF
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F D606200F, SPUSTAT 0005 0005 0005, JOY_STAT 0001D005 00017805 0000D805, DICR 00000000 00000000 00000000
+SIO1 with nothing attached; cycles from the TX write; t:v is STAT bits 0-2 (1 TX
+ready, 2 RX, 4 TX idle) changing to v at t.
+As found: MODE 0000 CTRL 0000 BAUD 0000 STAT 00000185
+One byte 55h, MODE 004D BAUD 0088: 55:0 131:1 1462:5 (ready 131, idle 1462)
+55h, then AAh written at ready + k tenths of (idle - ready):
+ k 0, AAh at 151: 210:0 1512:1 2877:5
+ k 1, AAh at 286: 336:0 1519:1 2884:5
+ k 2, AAh at 418: 468:0 1515:1 2880:5
+ k 3, AAh at 550: 605:0 1516:1 2881:5
+ k 4, AAh at 682: 732:0 1524:1 2872:5
+ k 5, AAh at 814: 874:0 1513:1 2878:5
+ k 6, AAh at 946: 1001:0 1521:1 2886:5
+ k 7, AAh at 1078: 1128:0 1512:1 2877:5
+ k 8, AAh at 1210: 1260:0 1525:1 2873:5
+ k 9, AAh at 1342: 1402:0 1514:1 2879:5
+Lengths 5 to 8 bits, 1 stop bit, BAUD 0020, by factor: TX ready/TX idle
+ MUL1: 5 bits 55/286; 6 bits 51/286; 7 bits 51/333; 8 bits 51/350;
+ MUL16: 5 bits 520/4095; 6 bits 520/4622; 7 bits 524/5119; 8 bits 520/5642;
+ MUL64: 5 bits 2050/16386; 6 bits 2054/18435; 7 bits 2054/20487; 8 bits 2050/22540;
+Put back: MODE 0000 CTRL 0000 BAUD 0000; MISC now DFFD
+Done.
+```
+
+[02T1Z.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/02T1Z.txt)
+
+```
+===== 02 T1Z F16 TIMER1 TARGET 0 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F D606200F, SPUSTAT 0805 0805 0805, JOY_STAT 00020805 0001B005 00011805, DICR 00000000 00000000 00000000
+Timer 1, target 0, mode 00D8h written after each state; then I_STAT bit 5 / the mode,
+0, 100 and 1000 cycles on (each its own write); four passes.
+after mode 0000h, pass 1: 1/08D8 1/08D8 1/08D8
+after mode 0000h, pass 2: 1/08D8 1/08D8 1/08D8
+after mode 0000h, pass 3: 1/08D8 1/08D8 1/08D8
+after mode 0000h, pass 4: 1/08D8 1/08D8 1/08D8
+after a pulse run (0058h, target 0), pass 1: 0/0CD8 0/0CD8 0/0CD8
+after a pulse run (0058h, target 0), pass 2: 0/0CD8 0/0CD8 0/0CD8
+after a pulse run (0058h, target 0), pass 3: 0/0CD8 0/0CD8 0/0CD8
+after a pulse run (0058h, target 0), pass 4: 0/0CD8 0/0CD8 0/0CD8
+after a toggle run, bit 10 set, pass 1: 1/08D8 1/08D8 1/08D8
+after a toggle run, bit 10 set, pass 2: 1/08D8 1/08D8 1/08D8
+after a toggle run, bit 10 set, pass 3: 1/08D8 1/08D8 1/08D8
+after a toggle run, bit 10 set, pass 4: 1/08D8 1/08D8 1/08D8
+after a toggle run, bit 10 clear, pass 1: 1/08D8 1/08D8 1/08D8
+after a toggle run, bit 10 clear, pass 2: 1/08D8 1/08D8 1/08D8
+after a toggle run, bit 10 clear, pass 3: 1/08D8 1/08D8 1/08D8
+after a toggle run, bit 10 clear, pass 4: 1/08D8 1/08D8 1/08D8
+counter written 0 first, pass 1: 1/08D8 1/08D8 1/08D8
+counter written 0 first, pass 2: 1/08D8 1/08D8 1/08D8
+counter written 0 first, pass 3: 1/08D8 1/08D8 1/08D8
+counter written 0 first, pass 4: 1/08D8 1/08D8 1/08D8
+counter written 1234h first, pass 1: 1/08D8 1/08D8 1/08D8
+counter written 1234h first, pass 2: 1/08D8 1/08D8 1/08D8
+counter written 1234h first, pass 3: 1/08D8 1/08D8 1/08D8
+counter written 1234h first, pass 4: 1/08D8 1/08D8 1/08D8
+straight after the last pass (followup10 TTG), pass 1: 0/0CD8 0/0CD8 0/0CD8
+straight after the last pass (followup10 TTG), pass 2: 0/0CD8 0/0CD8 0/0CD8
+straight after the last pass (followup10 TTG), pass 3: 0/0CD8 0/0CD8 0/0CD8
+straight after the last pass (followup10 TTG), pass 4: 0/0CD8 0/0CD8 0/0CD8
+Done.
+```
+
+[03T2W.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/03T2W.txt)
+
+```
+===== 03 T2W F16 TIMER2 STOPPED | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0805 0805 0805, JOY_STAT 00019005 00013805 0000C805, DICR 00000000 00000000 00000000
+Timer 2 stopped, target 8000h: the mode read (to clear bits 11-12), a counter write,
+then the mode and counter read at once or after delay(500). value: mode/counter.
+Mode 0001, at once: 7FFF 0401/7FFF; 7FFE 0401/7FFE; 0000 0401/0000; 8001 0401/8001; 8000 0C01/8000; FFFF 0C01/FFFF;
+Mode 0001, after 500: 7FFF 0401/7FFF; 7FFE 0401/7FFE; 0000 0401/0000; 8001 0401/8001; 8000 0C01/8000; FFFF 0C01/FFFF;
+Mode 0009, at once: 7FFF 0409/7FFF; 7FFE 0409/7FFE; 0000 0409/0000; 8001 0409/8001; 8000 0C09/0000; FFFF 0409/FFFF;
+Mode 0009, after 500: 7FFF 0409/7FFF; 7FFE 0409/7FFE; 0000 0409/0000; 8001 0409/8001; 8000 0C09/0000; FFFF 0409/FFFF;
+Done.
+```
+
+[04T1H.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/04T1H.txt)
+
+```
+===== 04 T1H F16 HBLANK AND HOLD | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F D606200F, SPUSTAT 0005 0005 0005, JOY_STAT 00005005 00021805 00018805, DICR 00000000 00000000 00000000
+Timer 1 on hblank (mode 0100h): the line measured over 16 ticks, then the mode written
+off cycles after a tick; first and second tick after the write. Two runs a point.
+16 ticks in 34412 cycles: a line of 2151
+off 0: at +46: first 2084, second 4242; at +33: first 2100, second 4258;
+off 134: at +165: first 1988, second 4130; at +165: first 1972, second 4130;
+off 268: at +297: first 1844, second 4003; at +297: first 1844, second 4002;
+off 403: at +429: first 1716, second 3874; at +429: first 1716, second 3858;
+off 537: at +572: first 1572, second 3730; at +572: first 1556, second 3714;
+off 672: at +704: first 1444, second 3586; at +704: first 1428, second 3586;
+off 806: at +836: first 1300, second 3458; at +836: first 1300, second 3459;
+off 941: at +968: first 1188, second 3330; at +968: first 1172, second 3330;
+off 1075: at +1111: first 1028, second 3186; at +1111: first 1028, second 3170;
+off 1209: at +1243: first 900, second 3042; at +1243: first 900, second 3042;
+off 1344: at +1375: first 772, second 2919; at +1375: first 756, second 2914;
+off 1478: at +1511: first 628, second 2786; at +1507: first 628, second 2786;
+off 1613: at +1639: first 500, second 2658; at +1639: first 500, second 2642;
+off 1747: at +1782: first 356, second 2514; at +1782: first 356, second 2514;
+off 1882: at +1914: first 228, second 2386; at +1914: first 228, second 2387;
+off 2016: at +2046: first 100, second 2242; at +2046: first 84, second 2242;
+A counter write of 1234h, k NOPs, two lhu of it back to back (from the cache, second
+call): first read - 1234h / second - first. Timer at the system clock, mode 0000h.
+Timer 0: k0 0/4 k1 0/4 k2 1/4 k3 2/4 k4 3/4 k5 4/4 k6 5/4 k7 6/4 k8 7/4
+Timer 2: k0 0/4 k1 0/4 k2 1/4 k3 2/4 k4 3/4 k5 4/4 k6 5/4 k7 6/4 k8 7/4
+Done.
+```
+
+[05F8R.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/05F8R.txt)
+
+```
+===== 05 F8R F16 1F8010F8 READS | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0805 0805 0805, JOY_STAT 00019805 00014005 0000D005, DICR 00000000 00000000 00000000
+1F8010F8h (dma/channels.txt:132-141: 7FFAC68Bh or 0BFAC688h, 7FE358D1h after DMA)
+and 1F8010FCh, read by lw, lhu and lbu, around DMA6 and DMA2 runs.
+As the group starts: lw 7FEB1A23, lhu +0 1A23 +2 7FEB, lbu 23 1A EB 7F; 1F8010FCh lw 00FFFFFF
+After a DMA6 OTC of 256 entries: lw 7FE32A63, lhu +0 2A63 +2 7FE3, lbu 63 2A E3 7F; 1F8010FCh lw 00FFFFFF
+After a DMA2 list of 1024 empty nodes: lw 7FE72A23, lhu +0 2A23 +2 7FE7, lbu 23 2A E7 7F; 1F8010FCh lw 00FFFFFF
+During that list, lw every 1000 cycles: 67E72A23 67E72A23 67E72A23 67E72A23 67E72A23 67E72A23 67E72A23 67E72A23
+After DMA6 again: lw 7FE32A63, lhu +0 2A63 +2 7FE3, lbu 63 2A E3 7F; 1F8010FCh lw 00FFFFFF
+Done.
+```
+
+[06CH1.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/06CH1.txt)
+
+```
+===== 06 CH1 F16 CHOPPING SYNC 1 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F D606200F, SPUSTAT 0005 0005 0005, JOY_STAT 0000F005 00009805 00002805, DICR 00000000 00000000 00000000
+main 10CHP's transfers of 8192 bytes. Each row: cycles as 10CHP times them (b: GPU busy
+after), then a second run's MADR BCR CHCR after the MADR store | the BCR store | the
+CHCR store | the end; then DPCR DICR (all four reads when they changed).
+S1 b 1 22869| 024818 1 00000201| 024818 8000001 00000201| 02481C 7FE0001 01000201| 026818 1 00000201| 33333B33 00000000
+S1 b 2 12553| 024818 2 00000201| 024818 4000002 00000201| 024820 3FE0002 01000201| 026818 2 00000201| 33333B33 00000000
+S1 b 3 9179b| 024818 3 00000201| 024818 2AA0003 00000201| 024824 2A80003 01000201| 026810 3 00000201| 33333B33 00000000
+S1 b 4 7360| 024818 4 00000201| 024818 2000004 00000201| 024828 1FE0004 01000201| 026818 4 00000201| 33333B33 00000000
+S1 b 5 6331b| 024818 5 00000201| 024818 1990005 00000201| 02482C 1970005 01000201| 02680C 5 00000201| 33333B33 00000000
+S1 b 6 5688b| 024818 6 00000201| 024818 1550006 00000201| 024830 1530006 01000201| 026810 6 00000201| 33333B33 00000000
+S1 b 7 5178b| 024818 7 00000201| 024818 1240007 00000201| 024834 1220007 01000201| 026808 7 00000201| 33333B33 00000000
+S1 b 8 4826| 024818 8 00000201| 024818 1000008 00000201| 024838 FE0008 01000201| 026818 8 00000201| 33333B33 00000000
+S1 b 9 4536b| 024818 9 00000201| 024818 E30009 00000201| 02483C E10009 01000201| 026804 9 00000201| 33333B33 00000000
+S1 b 10 4344b| 024818 A 00000201| 024818 CC000A 00000201| 024840 CA000A 01000201| 0267F8 A 00000201| 33333B33 00000000
+S1 b 11 4114b| 024818 B 00000201| 024818 BA000B 00000201| 024844 B8000B 01000201| 026810 B 00000201| 33333B33 00000000
+S1 b 12 4061b| 024818 C 00000201| 024818 AA000C 00000201| 024848 A8000C 01000201| 0267F8 C 00000201| 33333B33 00000000
+S1 b 13 3853b| 024818 D 00000201| 024818 9D000D 00000201| 02484C 9B000D 01000201| 0267FC D 00000201| 33333B33 00000000
+S1 b 14 3819b| 024818 E 00000201| 024818 92000E 00000201| 024850 90000E 01000201| 026808 E 00000201| 33333B33 00000000
+S1 b 15 3657b| 024818 F 00000201| 024818 88000F 00000201| 024854 86000F 01000201| 0267F8 F 00000201| 33333B33 00000000
+S1 b 16 3601| 024818 10 00000201| 024818 800010 00000201| 024858 7E0010 01000201| 026818 10 00000201| 33333B33 00000000
+S1 b 17 3520b| 024818 11 00000201| 024818 780011 00000201| 02485C 760011 01000201| 0267F8 11 00000201| 33333B33 00000000
+S1 b 18 3488b| 024818 12 00000201| 024818 710012 00000201| 024860 6F0012 01000201| 0267E0 12 00000201| 33333B33 00000000
+S1 b 19 3370b| 024818 13 00000201| 024818 6B0013 00000201| 024864 690013 01000201| 0267DC 13 00000201| 33333B33 00000000
+S1 b 20 3392b| 024818 14 00000201| 024818 660014 00000201| 024868 640014 01000201| 0267F8 14 00000201| 33333B33 00000000
+S1 b 21 3318b| 024818 15 00000201| 024818 610015 00000201| 02486C 5F0015 01000201| 0267EC 15 00000201| 33333B33 00000000
+S1 b 22 3274b| 024818 16 00000201| 024818 5D0016 00000201| 024870 5B0016 01000201| 026810 16 00000201| 33333B33 00000000
+S1 b 23 3151b| 024818 17 00000201| 024818 590017 00000201| 024874 570017 01000201| 026814 17 00000201| 33333B33 00000000
+S1 b 24 3241b| 024818 18 00000201| 024818 550018 00000201| 024878 530018 01000201| 0267F8 18 00000201| 33333B33 00000000
+S1 b 25 3120b| 024818 19 00000201| 024818 510019 00000201| 02487C 4F0019 01000201| 0267BC 19 00000201| 33333B33 00000000
+S1 b 26 3143b| 024818 1A 00000201| 024818 4E001A 00000201| 024880 4C001A 01000201| 0267C8 1A 00000201| 33333B33 00000000
+S1 b 27 3085b| 024818 1B 00000201| 024818 4B001B 00000201| 024884 49001B 01000201| 0267BC 1B 00000201| 33333B33 00000000
+S1 b 28 3135b| 024818 1C 00000201| 024818 49001C 00000201| 024888 47001C 01000201| 026808 1C 00000201| 33333B33 00000000
+S1 b 29 3072b| 024818 1D 00000201| 024818 46001D 00000201| 02488C 44001D 01000201| 0267D0 1D 00000201| 33333B33 00000000
+S1 b 30 3094b| 024818 1E 00000201| 024818 44001E 00000201| 024890 42001E 01000201| 0267F8 1E 00000201| 33333B33 00000000
+S1 b 31 3000b| 024818 1F 00000201| 024818 42001F 00000201| 024894 40001F 01000201| 026810 1F 00000201| 33333B33 00000000
+S1 b 32 2993| 024818 20 00000201| 024818 400020 00000201| 024898 3E0020 01000201| 026818 20 00000201| 33333B33 00000000
+S1 b 33 3000b| 024818 21 00000201| 024818 3E0021 00000201| 02489C 3C0021 01000201| 026810 21 00000201| 33333B33 00000000
+S1 b 34 3007b| 024818 22 00000201| 024818 3C0022 00000201| 0248A0 3A0022 01000201| 0267F8 22 00000201| 33333B33 00000000
+S1 b 35 2945b| 024818 23 00000201| 024818 3A0023 00000201| 0248A4 380023 01000201| 0267D0 23 00000201| 33333B33 00000000
+S1 b 36 2972b| 024818 24 00000201| 024818 380024 00000201| 0248A8 360024 01000201| 026798 24 00000201| 33333B33 00000000
+S1 b 37 2949b| 024818 25 00000201| 024818 370025 00000201| 0248AC 350025 01000201| 0267E4 25 00000201| 33333B33 00000000
+S1 b 38 2927b| 024818 26 00000201| 024818 350026 00000201| 0248B0 330026 01000201| 026790 26 00000201| 33333B33 00000000
+S1 b 39 2868b| 024818 27 00000201| 024818 340027 00000201| 0248B4 320027 01000201| 0267C8 27 00000201| 33333B33 00000000
+S1 b 40 2874b| 024818 28 00000201| 024818 330028 00000201| 0248B8 310028 01000201| 0267F8 28 00000201| 33333B33 00000000
+S1 b 41 2838b| 024818 29 00000201| 024818 310029 00000201| 0248BC 300029 01000201| 02677C 29 00000201| 33333B33 00000000
+S1 b 42 2854b| 024818 2A 00000201| 024818 30002A 00000201| 0248C0 2E002A 01000201| 026798 2A 00000201| 33333B33 00000000
+S1 b 43 2822b| 024818 2B 00000201| 024818 2F002B 00000201| 0248C4 2D002B 01000201| 0267AC 2B 00000201| 33333B33 00000000
+S1 b 44 2722b| 024818 2C 00000201| 024818 2E002C 00000201| 0248C8 2C002C 01000201| 0267B8 2C 00000201| 33333B33 00000000
+S1 b 45 2806b| 024818 2D 00000201| 024818 2D002D 00000201| 0248CC 2B002D 01000201| 0267BC 2D 00000201| 33333B33 00000000
+S1 b 46 2800b| 024818 2E 00000201| 024818 2C002E 00000201| 0248D0 2A002E 01000201| 0267B8 2E 00000201| 33333B33 00000000
+S1 b 47 2855b| 024818 2F 00000201| 024818 2B002F 00000201| 0248D4 29002F 01000201| 0267AC 2F 00000201| 33333B33 00000000
+S1 b 48 2784b| 024818 30 00000201| 024818 2A0030 00000201| 0248D8 280030 01000201| 026798 30 00000201| 33333B33 00000000
+S1 b 49 2770b| 024818 31 00000201| 024818 290031 00000201| 0248DC 270031 01000201| 02677C 31 00000201| 33333B33 00000000
+S1 b 50 2651b| 024818 32 00000201| 024818 280032 00000201| 0248E0 260032 01000201| 026758 32 00000201| 33333B33 00000000
+S1 b 51 2755b| 024818 33 00000201| 024818 280033 00000201| 0248E4 260033 01000201| 0267F8 33 00000201| 33333B33 00000000
+S1 b 52 2761b| 024818 34 00000201| 024818 270034 00000201| 0248E8 250034 01000201| 0267C8 34 00000201| 33333B33 00000000
+S1 b 53 2744b| 024818 35 00000201| 024818 260035 00000201| 0248EC 240035 01000201| 026790 35 00000201| 33333B33 00000000
+S1 b 54 2722b| 024818 36 00000201| 024818 250036 00000201| 0248F0 230036 01000201| 026750 36 00000201| 33333B33 00000000
+S1 b 55 2725b| 024818 37 00000201| 024818 250037 00000201| 0248F4 230037 01000201| 0267E4 37 00000201| 33333B33 00000000
+S1 b 56 2727b| 024818 38 00000201| 024818 240038 00000201| 0248F8 220038 01000201| 026798 38 00000201| 33333B33 00000000
+S1 b 57 2665b| 024818 39 00000201| 024818 230039 00000201| 0248FC 210039 01000201| 026744 39 00000201| 33333B33 00000000
+S1 b 58 2696b| 024818 3A 00000201| 024818 23003A 00000201| 024900 21003A 01000201| 0267D0 3A 00000201| 33333B33 00000000
+S1 b 59 2708b| 024818 3B 00000201| 024818 22003B 00000201| 024904 20003B 01000201| 026770 3B 00000201| 33333B33 00000000
+S1 b 60 2784b| 024818 3C 00000201| 024818 22003C 00000201| 024908 21003C 01000201| 0267F8 3C 00000201| 33333B33 00000000
+S1 b 61 2688b| 024818 3D 00000201| 024818 21003D 00000201| 02490C 1F003D 01000201| 02678C 3D 00000201| 33333B33 00000000
+S1 b 62 2686b| 024818 3E 00000201| 024818 21003E 00000201| 024910 1F003E 01000201| 026810 3E 00000201| 33333B33 00000000
+S1 b 63 2661b| 024818 3F 00000201| 024818 20003F 00000201| 024914 1F003F 01000201| 026798 3F 00000201| 33333B33 00000000
+S1 b 64 2630b| 024818 40 00000201| 024818 200040 00000201| 024918 1F0040 01000201| 026818 40 00000201| 33333B33 00000000
+S1 b128 2424| 024818 80 00000201| 024818 100080 00000201| 024A18 E0080 01000201| 026818 80 00000201| 33333B33 00000000
+S0 no chopping 2260b| 024818 800 00000001| 024818 800 00000001| 024818 800 00000001| 024818 800 00000001| 33333B33 00000000
+Done.
+```
+
+[07CH2.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/07CH2.txt)
+
+```
+===== 07 CH2 F16 CHOPPING SYNC 0 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F D606200F, SPUSTAT 0005 0005 0005, JOY_STAT 00017805 00012005 00007005, DICR 00000000 00000000 00000000
+main 10CHP's transfers of 8192 bytes. Each row: cycles as 10CHP times them (b: GPU busy
+after), then a second run's MADR BCR CHCR after the MADR store | the BCR store | the
+CHCR store | the end; then DPCR DICR (all four reads when they changed).
+S0 d 1 c 1 18798| 024818 0 00000101| 024818 800 00000101| 02481C 7FE 01000101| 026818 0 00000101| 33333B33 00000000
+S0 d 1 c 2 18795| 024818 0 00100101| 024818 800 00100101| 02481C 7FE 01100101| 026818 0 00100101| 33333B33 00000000
+S0 d 1 c 4 22859| 024818 0 00200101| 024818 800 00200101| 02481C 7FE 01200101| 026818 0 00200101| 33333B33 00000000
+S0 d 1 c 8 30894| 024818 0 00300101| 024818 800 00300101| 02481C 7FE 01300101| 026818 0 00300101| 33333B33 00000000
+S0 d 1 c 16 47721| 024818 0 00400101| 024818 800 00400101| 02481C 7FF 01400101| 026818 0 00400101| 33333B33 00000000
+S0 d 1 c 32 80694| 024818 0 00500101| 024818 800 00500101| 02481C 7FF 01500101| 026818 0 00500101| 33333B33 00000000
+S0 d 1 c 64 81928| 024818 0 00600101| 024818 800 00600101| 02481C 7FF 01600101| 026818 0 00600101| 33333B33 00000000
+S0 d 1 c128 80043| 024818 0 00700101| 024818 800 00700101| 02481C 7FF 01700101| 026818 0 00700101| 33333B33 00000000
+S0 d 2 c 1 9446| 024818 0 00010101| 024818 800 00010101| 024820 7FC 01010101| 026818 0 00010101| 33333B33 00000000
+S0 d 2 c 2 10561| 024818 0 00110101| 024818 800 00110101| 024820 7FC 01110101| 026818 0 00110101| 33333B33 00000000
+S0 d 2 c 4 12546| 024818 0 00210101| 024818 800 00210101| 024820 7FC 01210101| 026818 0 00210101| 33333B33 00000000
+S0 d 2 c 8 16449| 024818 0 00310101| 024818 800 00310101| 024820 7FC 01310101| 026818 0 00310101| 33333B33 00000000
+S0 d 2 c 16 24633| 024818 0 00410101| 024818 800 00410101| 024820 7FE 01410101| 026818 0 00410101| 33333B33 00000000
+S0 d 2 c 32 41013| 024818 0 00510101| 024818 800 00510101| 024820 7FE 01510101| 026818 0 00510101| 33333B33 00000000
+S0 d 2 c 64 73735| 024818 0 00610101| 024818 800 00610101| 024820 7FE 01610101| 026818 0 00610101| 33333B33 00000000
+S0 d 2 c128 73671| 024818 0 00710101| 024818 800 00710101| 024820 7FE 01710101| 026818 0 00710101| 33333B33 00000000
+S0 d 4 c 1 5868| 024818 0 00020101| 024818 800 00020101| 024828 7F8 01020101| 026818 0 00020101| 33333B33 00000000
+S0 d 4 c 2 6319| 024818 0 00120101| 024818 800 00120101| 024828 7F8 01120101| 026818 0 00120101| 33333B33 00000000
+S0 d 4 c 4 7352| 024818 0 00220101| 024818 800 00220101| 024828 7F8 01220101| 026818 0 00220101| 33333B33 00000000
+S0 d 4 c 8 9420| 024818 0 00320101| 024818 800 00320101| 024828 7F8 01320101| 026818 0 00320101| 33333B33 00000000
+S0 d 4 c 16 13488| 024818 0 00420101| 024818 800 00420101| 024828 7FC 01420101| 026818 0 00420101| 33333B33 00000000
+S0 d 4 c 32 21864| 024818 0 00520101| 024818 800 00520101| 024828 7FC 01520101| 026818 0 00520101| 33333B33 00000000
+S0 d 4 c 64 37992| 024818 0 00620101| 024818 800 00620101| 024828 7FC 01620101| 026818 0 00620101| 33333B33 00000000
+S0 d 4 c128 70720| 024818 0 00720101| 024818 800 00720101| 024828 7FC 01720101| 026818 0 00720101| 33333B33 00000000
+S0 d 8 c 1 4063| 024818 0 00030101| 024818 800 00030101| 024838 7F0 01030101| 026818 0 00030101| 33333B33 00000000
+S0 d 8 c 2 4297| 024818 0 00130101| 024818 800 00130101| 024838 7F0 01130101| 026818 0 00130101| 33333B33 00000000
+S0 d 8 c 4 4751| 024818 0 00230101| 024818 800 00230101| 024838 7F0 01230101| 026818 0 00230101| 33333B33 00000000
+S0 d 8 c 8 5825| 024818 0 00330101| 024818 800 00330101| 024838 7F0 01330101| 026818 0 00330101| 33333B33 00000000
+S0 d 8 c 16 7801| 024818 0 00430101| 024818 800 00430101| 024838 7F8 01430101| 026818 0 00430101| 33333B33 00000000
+S0 d 8 c 32 11960| 024818 0 00530101| 024818 800 00530101| 024838 7F8 01530101| 026818 0 00530101| 33333B33 00000000
+S0 d 8 c 64 20178| 024818 0 00630101| 024818 800 00630101| 024838 7F8 01630101| 026818 0 00630101| 33333B33 00000000
+S0 d 8 c128 36361| 024818 0 00730101| 024818 800 00730101| 024838 7F8 01730101| 026818 0 00730101| 33333B33 00000000
+S0 d 16 c 1 3136| 024818 0 00040101| 024818 800 00040101| 024858 7E0 01040101| 026818 0 00040101| 33333B33 00000000
+S0 d 16 c 2 3273| 024818 0 00140101| 024818 800 00140101| 024858 7E0 01140101| 026818 0 00140101| 33333B33 00000000
+S0 d 16 c 4 3499| 024818 0 00240101| 024818 800 00240101| 024858 7E0 01240101| 026818 0 00240101| 33333B33 00000000
+S0 d 16 c 8 4064| 024818 0 00340101| 024818 800 00340101| 024858 7E0 01340101| 026818 0 00340101| 33333B33 00000000
+S0 d 16 c 16 5039| 024818 0 00440101| 024818 800 00440101| 024858 7F0 01440101| 026818 0 00440101| 33333B33 00000000
+S0 d 16 c 32 7062| 024818 0 00540101| 024818 800 00540101| 024858 7F0 01540101| 026818 0 00540101| 33333B33 00000000
+S0 d 16 c 64 11087| 024818 0 00640101| 024818 800 00640101| 024858 7F0 01640101| 026818 0 00640101| 33333B33 00000000
+S0 d 16 c128 19277| 024818 0 00740101| 024818 800 00740101| 024858 7F0 01740101| 026818 0 00740101| 33333B33 00000000
+S0 d 32 c 1 2699b| 024818 0 00050101| 024818 800 00050101| 024898 7C0 01050101| 026818 0 00050101| 33333B33 00000000
+S0 d 32 c 2 2773| 024818 0 00150101| 024818 800 00150101| 024898 7C0 01150101| 026818 0 00150101| 33333B33 00000000
+S0 d 32 c 4 2822b| 024818 0 00250101| 024818 800 00250101| 024898 7C0 01250101| 026818 0 00250101| 33333B33 00000000
+S0 d 32 c 8 3119| 024818 0 00350101| 024818 800 00350101| 024898 7C0 01350101| 026818 0 00350101| 33333B33 00000000
+S0 d 32 c 16 3628| 024818 0 00450101| 024818 800 00450101| 024898 7E0 01450101| 026818 0 00450101| 33333B33 00000000
+S0 d 32 c 32 4616| 024818 0 00550101| 024818 800 00550101| 024898 7E0 01550101| 026818 0 00550101| 33333B33 00000000
+S0 d 32 c 64 6582| 024818 0 00650101| 024818 800 00650101| 024898 7E0 01650101| 026818 0 00650101| 33333B33 00000000
+S0 d 32 c128 10720| 024818 0 00750101| 024818 800 00750101| 024898 7E0 01750101| 026818 0 00750101| 33333B33 00000000
+S0 d 64 c 1 2466b| 024818 0 00060101| 024818 800 00060101| 024918 780 01060101| 026818 0 00060101| 33333B33 00000000
+S0 d 64 c 2 2492b| 024818 0 00160101| 024818 800 00160101| 024918 780 01160101| 026818 0 00160101| 33333B33 00000000
+S0 d 64 c 4 2550b| 024818 0 00260101| 024818 800 00260101| 024918 780 01260101| 026818 0 00260101| 33333B33 00000000
+S0 d 64 c 8 2680b| 024818 0 00360101| 024818 800 00360101| 024918 780 01360101| 026818 0 00360101| 33333B33 00000000
+S0 d 64 c 16 2893| 024818 0 00460101| 024818 800 00460101| 024918 7C0 01460101| 026818 0 00460101| 33333B33 00000000
+S0 d 64 c 32 3429| 024818 0 00560101| 024818 800 00560101| 024918 7C0 01560101| 026818 0 00560101| 33333B33 00000000
+S0 d 64 c 64 4382| 024818 0 00660101| 024818 800 00660101| 024918 7C0 01660101| 026818 0 00660101| 33333B33 00000000
+S0 d 64 c128 6396| 024818 0 00760101| 024818 800 00760101| 024918 7C0 01760101| 026818 0 00760101| 33333B33 00000000
+S0 d128 c 1 2347| 024818 0 00070101| 024818 800 00070101| 024A18 700 01070101| 026818 0 00070101| 33333B33 00000000
+S0 d128 c 2 2368b| 024818 0 00170101| 024818 800 00170101| 024A18 700 01170101| 026818 0 00170101| 33333B33 00000000
+S0 d128 c 4 2395b| 024818 0 00270101| 024818 800 00270101| 024A18 700 01270101| 026818 0 00270101| 33333B33 00000000
+S0 d128 c 8 2451b| 024818 0 00370101| 024818 800 00370101| 024A18 700 01370101| 026818 0 00370101| 33333B33 00000000
+S0 d128 c 16 2575b| 024818 0 00470101| 024818 800 00470101| 024A18 780 01470101| 026818 0 00470101| 33333B33 00000000
+S0 d128 c 32 2786| 024818 0 00570101| 024818 800 00570101| 024A18 780 01570101| 026818 0 00570101| 33333B33 00000000
+S0 d128 c 64 3306| 024818 0 00670101| 024818 800 00670101| 024A18 780 01670101| 026818 0 00670101| 33333B33 00000000
+S0 d128 c128 4206b| 024818 0 00770101| 024818 800 00770101| 024A18 780 01770101| 026818 0 00770101| 33333B33 00000000
+Done.
+```
+
+[08GT1.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/08GT1.txt)
+
+```
+===== 08 GT1 F16 GTE AFTER 1 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0805 0805 0805, JOY_STAT 0000B005 00005805 00020805, DICR 00000000 00000000 00000000
+GTE: the seed loaded (SXYP IRGB ORGB LZCR not written), a command with sf 1, then each
+N/A opcode with sf 1 straight after it. After the command alone all 64 registers (0-31
+data, 32-63 control); after each opcode the ones that differ from that as reg=hex.
+Seed:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 00000123 FFFFFF00 00000456 0014000A 0028012C 00C80050 00000000
+ 00001000 00001200 00001400 00001600 11223344 22334455 33445566 5501AA55
+ 00012345 00000234 FFFFFCBB 00000456 00000000 00000000 00F0F0F0 00000000
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+RTPS (01) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000D46 00000204 00000030 00000BC0 0028012C 00C80050 00F80197 00F80197
+ 00001200 00001400 00001600 00000BC0 11223344 22334455 33445566 5501AA55
+ 00D46D00 00000204 00000030 00000BC0 00005C04 00005C04 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=0 12=c80050 13=f80197 14=1240379 15=1240379 16=1400 17=1600 18=bc0 19=1d0 24=ffe58500 F=1000
+ 03: 8=0 12=c80050 13=f80197 14=14f03ff 15=14f03ff 16=1400 17=1600 18=bc0 19=0 24=ff000100 F=80025000
+ 04: 12=c80050 13=f80197 14=80057 15=80057 F=0
+ 07: 24=1d800 F=0
+ 08: 24=ffff6868 F=0
+ 09: 24=ffefb6e8 F=0
+ 0A: 24=ffee7760 F=0
+ 0D: 9=ffffff96 10=fffff6df 11=fffffe49 25=ffffff96 26=fffff6df 27=fffffe49 28=0 29=0 F=0
+ 0E: 10=ffff8000 11=fffffc29 24=febc3948 26=ff6dfc00 27=fffffc29 28=4 29=4 F=80800000
+ 15: 9=6a3 10=777 11=84b 20=22334455 21=33445566 22=3084776a 25=6a3 26=777 27=84b 28=41cd 29=41cd F=0
+ 17: 9=6c6 10=7b7 11=960 20=3088796a 21=3088796a 22=30967b6c 25=6c6 26=7b7 27=960 28=49ed 29=49ed F=0
+ 18: 9=6b8 10=77a 11=94c 20=3088796a 21=3088796a 22=3094776b 25=6b8 26=77a 27=94c 28=49cd 29=49cd F=0
+ 19: 9=6b8 10=77a 11=94c 20=33445566 21=3088796a 22=3094776b 25=6b8 26=77a 27=94c 28=49cd 29=49cd F=0
+ 2B: 9=7b9 10=85f 11=905 21=308d8378 22=3090857b 25=7b9 26=85f 27=905 28=4a0f 29=4a0f F=0
+ 2C: 9=7b9 10=85f 11=905 22=3090857b 25=7b9 26=85f 27=905 28=4a0f 29=4a0f F=0
+ 2F: 7=120 24=10da80 F=0
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=147016b 13=ff5c03c7 14=f4015d 15=f4015d 16=1600 17=bc0 18=0 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=80020000
+ 35: 8=0 9=bc 10=1e 12=3ff033f 13=ff5c03c7 14=12b02b7 15=12b02b7 16=1600 17=bc0 18=0 19=a4 24=ff000100 25=bc 26=1e 28=5c01 29=5c01 F=80023000
+ 36: 8=0 9=bc 10=1e 12=147016b 13=cd0177 14=12b02b7 15=12b02b7 16=1400 17=1600 18=bc0 19=0 24=ff000100 25=bc 26=1e 28=5c01 29=5c01 F=80021000
+ 37: 8=0 10=1e 12=147016b 13=ff5c03c7 14=12b03ff 15=12b03ff 16=1400 17=1600 18=bc0 19=0 24=ff000100 26=1e F=80025000
+ 38: 10=1e 12=147016b 13=cd0177 14=f50197 15=f50197 16=1400 17=1600 18=bc0 26=1e F=0
+ 39: 12=57002b 13=ffdd0037 14=80057 15=80057 16=1400 17=1600 18=bc0 F=0
+ 3A: 12=f80197 13=ffdd0037 14=80057 15=80057 16=1400 17=1600 18=bc0 F=0
+ 3B: 12=c80050 13=f80197 14=80057 15=80057 F=0
+RTPT (30) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000D7B 000000BC 0000001E 00000CB4 00F80197 00CA017C 00F4015D 00F4015D
+ 00001600 00000BC0 00000ACB 00000CB4 11223344 22334455 33445566 5501AA55
+ 00D7B200 000000BC 0000001E 00000CB4 00006401 00006401 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=0 9=204 10=30 12=ca017c 13=f4015d 14=1240379 15=1240379 16=bc0 17=acb 18=cb4 19=1d0 24=ffe58500 25=204 26=30 28=6404 29=6404 F=1000
+ 03: 8=0 10=30 12=ca017c 13=f4015d 14=14f02b7 15=14f02b7 16=bc0 17=acb 18=cb4 19=0 24=ff000100 26=30 F=80021000
+ 04: 12=ca017c 13=f4015d 14=4001d 15=4001d F=0
+ 07: 24=1206d0 F=0
+ 08: 24=8f9b8 F=0
+ 09: 24=ffe98392 F=0
+ 0A: 24=ffe80d36 F=0
+ 0D: 9=ffffffb8 10=fffff4c7 11=ffffff6b 25=ffffffb8 26=fffff4c7 27=ffffff6b 28=0 29=0 F=0
+ 0E: 10=ffff8000 11=fffffe90 24=fe8b25b8 26=ff4c7800 27=fffffe90 28=1 29=1 F=80800000
+ 15: 9=6d1 10=798 11=8a9 20=22334455 21=33445566 22=308a796d 25=6d1 26=798 27=8a9 28=45ed 29=45ed F=0
+ 17: 9=6d5 10=7ce 11=97a 20=308d7c6d 21=308d7b6d 22=30977c6d 25=6d5 26=7ce 27=97a 28=49ed 29=49ed F=0
+ 18: 9=6c4 10=796 11=96c 20=308d796d 21=308d786c 22=3096796c 25=6c4 26=796 27=96c 28=49ed 29=49ed F=0
+ 19: 9=6c4 10=796 11=96c 20=33445566 21=308d786c 22=3096796c 25=6c4 26=796 27=96c 28=49ed 29=49ed F=0
+ 2B: 9=7be 10=86b 11=918 21=308e8479 22=3091867b 25=7be 26=86b 27=918 28=4a0f 29=4a0f F=0
+ 2C: 9=7be 10=86b 11=918 22=3091867b 25=7be 26=86b 27=918 28=4a0f 29=4a0f F=0
+ 2F: 7=160 24=1441b8 F=0
+ 34: 12=f70191 13=ff5c03c7 16=acb 17=cb4 18=0 F=80020000
+ 35: 8=0 12=14f03ff 13=ff5c03c7 14=12b02b7 15=12b02b7 16=acb 17=cb4 18=0 19=a4 24=ff000100 F=80025000
+ 36: 8=0 12=f70191 13=d00173 14=12b02b7 15=12b02b7 16=bc0 17=acb 18=cb4 19=0 24=ff000100 F=80021000
+ 37: 8=0 13=ff5c03c7 14=12b02b7 15=12b02b7 16=bc0 17=acb 18=cb4 19=0 24=ff000100 F=80021000
+ 38: 13=d00173 16=bc0 17=acb 18=cb4 F=0
+ 39: 12=80057 13=ffda003c 14=4001d 15=4001d 16=bc0 17=acb 18=cb4 F=0
+ 3A: 12=f4015d 13=ffda003c 14=4001d 15=4001d 16=bc0 17=acb 18=cb4 F=0
+ 3B: 12=ca017c 13=f4015d 14=4001d 15=4001d F=0
+NCS (1E) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 000001F8 000002AE 00000546 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 22334455 33445566 30542A1F 5501AA55
+ 00012345 000001F8 000002AE 00000546 000028A3 000028A3 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=bf5 9=204 10=30 12=28012c 13=c80050 14=fc01c2 15=fc01c2 16=1200 17=1400 18=1600 19=7ec 24=bf5e00 25=204 26=30 28=2804 29=2804 F=0
+ 03: 8=aae 10=30 12=28012c 13=c80050 14=ff01e7 15=ff01e7 16=1200 17=1400 18=1600 19=604 24=aae300 26=30 28=2803 29=2803 F=0
+ 04: 8=aae 12=28012c 13=c80050 14=e400a7 15=e400a7 24=aae300 F=0
+ 07: 24=655410 F=0
+ 08: 24=60edd0 F=0
+ 09: 24=602e40 F=0
+ 0A: 24=5345e0 F=0
+ 0D: 9=106 10=fffffce6 11=aa 25=106 26=fffffce6 27=aa 28=402 29=402 F=0
+ 0E: 10=ffff8000 11=14f 24=ff7f29d0 26=ffce6e00 27=14f 28=803 29=803 F=80800000
+ 15: 9=421 10=48a 11=5ac 20=33445566 21=30542a1f 22=305a4842 25=421 26=48a 27=5ac 28=2d28 29=2d28 F=0
+ 17: 9=464 10=569 11=6ef 20=30655043 21=306d4f44 22=306e5646 25=464 26=569 27=6ef 28=3548 29=3548 F=0
+ 18: 9=43f 10=500 11=651 20=305a4842 21=306d4f44 22=30655043 25=43f 26=500 27=651 28=3148 29=3148 F=0
+ 19: 9=43f 10=500 11=651 20=30542a1f 21=306d4f44 22=30655043 25=43f 26=500 27=651 28=3148 29=3148 F=0
+ 2B: 9=4f8 10=5d0 11=7a0 21=30727273 22=307a5d4f 25=4f8 26=5d0 27=7a0 28=3d69 29=3d69 F=0
+ 2C: 21=30727273 F=0
+ 2F: 7=71c 24=729dd0 F=0
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=1020197 13=ad01ab 14=f4015d 15=f4015d 16=1400 17=1600 18=60e 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=0
+ 35: 8=b42 9=bc 10=1e 12=15f034f 13=ad01ab 14=f80177 15=f80177 16=1400 17=1600 18=60c 19=6c0 24=b42600 25=bc 26=1e 28=2801 29=2801 F=0
+ 36: 8=a61 9=bc 10=1e 12=100018e 13=b4019f 14=fa0182 15=fa0182 16=1200 17=1400 18=1600 19=5b2 24=a61a00 25=bc 26=1e 28=2801 29=2801 F=0
+ 37: 8=ab5 10=1e 12=100018e 13=ff5c03c7 14=f901e6 15=f901e6 16=1200 17=1400 18=1600 19=60c 24=ab5400 26=1e 28=2803 29=2803 F=0
+ 38: 8=ab5 10=1e 12=100018e 13=ad01ab 14=f901e6 15=f901e6 16=1200 17=1400 18=1600 19=60c 24=ab5400 26=1e 28=2803 29=2803 F=0
+ 39: 8=ab5 12=10004e 13=ffbd006b 14=e200a6 15=e200a6 16=1200 17=1400 18=1600 19=60c 24=ab5400 F=0
+ 3A: 8=ab5 12=c80050 13=ffbd006b 14=e200a6 15=e200a6 16=1200 17=1400 18=1600 19=60c 24=ab5400 F=0
+ 3B: 8=ab5 12=28012c 13=c80050 14=e200a6 15=e200a6 24=ab5400 F=0
+Done.
+```
+
+[09GT2.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/09GT2.txt)
+
+```
+===== 09 GT2 F16 GTE AFTER 2 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0005 0005 0005, JOY_STAT 0000F005 00009805 00002805, DICR 00000000 00000000 00000000
+GTE: the seed loaded (SXYP IRGB ORGB LZCR not written), a command with sf 1, then each
+N/A opcode with sf 1 straight after it. After the command alone all 64 registers (0-31
+data, 32-63 control); after each opcode the ones that differ from that as reg=hex.
+NCDS (13) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 0000043F 00000500 00000651 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 22334455 33445566 30655043 5501AA55
+ 00012345 0000043F 00000500 00000651 00003148 00003148 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=ef3 9=204 10=30 12=28012c 13=c80050 14=f30161 15=f30161 16=1200 17=1400 18=1600 19=1e90 24=ef3f00 25=204 26=30 28=3004 29=3004 F=0
+ 03: 8=ee2 10=30 12=28012c 13=c80050 14=f3018b 15=f3018b 16=1200 17=1400 18=1600 19=1ca8 24=ee2200 26=30 28=3008 29=3008 F=0
+ 04: 8=ee2 12=28012c 13=c80050 14=59004b 15=59004b 24=ee2200 F=0
+ 07: 24=1cf8c10 F=0
+ 08: 24=1cb25d0 F=0
+ 09: 24=1ca6640 F=0
+ 0A: 24=1bd7de0 F=0
+ 0D: 9=1350 10=fffffe0f 11=b4 25=1350 26=fffffe0f 27=b4 28=41f 29=41f F=0
+ 0E: 10=ffff8000 11=a33 24=ff8208d0 26=ffe0f200 27=a33 28=5008 29=5008 F=80800000
+ 15: 20=33445566 21=30655043 F=0
+ 17: 9=4a6 10=5d0 11=741 20=306e5646 21=30734f44 22=30745d4a 25=4a6 26=5d0 27=741 28=3969 29=3969 F=0
+ 18: 9=487 10=570 11=694 20=30655043 21=30734f44 22=30695748 25=487 26=570 27=694 28=3549 29=3549 F=0
+ 19: 9=487 10=570 11=694 20=30655043 21=30734f44 22=30695748 25=487 26=570 27=694 28=3549 29=3549 F=0
+ 2B: 20=30696a6a 21=30727273 F=0
+ 2C: 20=30696a6a F=0
+ 2F: 7=1dc0 24=1dcd5d0 F=0
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=11f0163 13=e10156 14=f4015d 15=f4015d 16=1400 17=1600 18=1cb1 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=0
+ 35: 8=ee9 9=bc 10=1e 12=3ff03ff 13=e10156 14=f2014c 15=f2014c 16=1400 17=1600 18=1cb0 19=1d64 24=ee9400 25=bc 26=1e 28=3001 29=3001 F=80006000
+ 36: 8=ede 9=bc 10=1e 12=11e0162 13=e20156 14=f2014d 15=f2014d 16=1200 17=1400 18=1600 19=1c56 24=edee00 25=bc 26=1e 28=3001 29=3001 F=0
+ 37: 8=ee2 10=1e 12=11e0162 13=ff5c03c7 14=f2018b 15=f2018b 16=1200 17=1400 18=1600 19=1cb0 24=ee2700 26=1e 28=3008 29=3008 F=0
+ 38: 8=ee2 10=1e 12=11e0162 13=e10156 14=f2018b 15=f2018b 16=1200 17=1400 18=1600 19=1cb0 24=ee2700 26=1e 28=3008 29=3008 F=0
+ 39: 8=ee2 12=2e0022 13=fff10016 14=59004b 15=59004b 16=1200 17=1400 18=1600 19=1cb0 24=ee2700 F=0
+ 3A: 8=ee2 12=c80050 13=fff10016 14=59004b 15=59004b 16=1200 17=1400 18=1600 19=1cb0 24=ee2700 F=0
+ 3B: 8=ee2 12=28012c 13=c80050 14=59004b 15=59004b 24=ee2700 F=0
+OP (0C) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 00000500 FFFFFD00 FFFFFDFF 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 11223344 22334455 33445566 5501AA55
+ 00012345 00000500 FFFFFD00 FFFFFDFF 0000000A 0000000A 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=0 9=204 10=30 12=28012c 13=c80050 14=14f03ff 15=14f03ff 16=1200 17=1400 18=1600 19=0 24=ff000100 25=204 26=30 28=4 29=4 F=80065000
+ 03: 8=0 10=30 12=28012c 13=c80050 14=14f03ff 15=14f03ff 16=1200 17=1400 18=1600 19=0 24=ff000100 26=30 F=80025000
+ 04: 8=0 12=28012c 13=c80050 14=fc0003ff 15=fc0003ff 24=ff000100 F=80007000
+ 07: 24=ff938510 F=0
+ 08: 24=ff8f1ed0 F=0
+ 09: 24=ff8e5f40 F=0
+ 0A: 24=ff8176e0 F=0
+ 0D: 9=fffffcaf 10=690 11=fffff880 25=fffffcaf 26=690 27=fffff880 28=1a0 29=1a0 F=0
+ 0E: 10=7fff 11=fffffcc0 24=86f3d0 26=690f00 27=fffffcc0 28=3ea 29=3ea F=80800000
+ 15: 9=43f 10=500 11=651 20=22334455 21=33445566 22=30655043 25=43f 26=500 27=651 28=3148 29=3148 F=0
+ 17: 9=487 10=49d 11=553 20=306e5646 21=30795044 22=30554948 25=487 26=49d 27=553 28=2929 29=2929 F=0
+ 18: 9=4a0 10=3f0 11=47f 20=306e5646 21=30795044 22=30473f4a 25=4a0 26=3f0 27=47f 28=20e9 29=20e9 F=0
+ 19: 9=4a0 10=3f0 11=47f 20=33445566 21=30795044 22=30473f4a 25=4a0 26=3f0 27=47f 28=20e9 29=20e9 F=0
+ 2B: 9=730 10=728 11=720 20=30616162 22=30727273 25=730 26=728 27=720 28=39ce 29=39ce F=0
+ 2C: 20=30616162 F=0
+ 2F: 24=ffa0ced0 F=80040000
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=3ff03ff 13=ff5c03c7 14=f4015d 15=f4015d 16=1400 17=1600 18=0 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=80026000
+ 35: 8=0 9=bc 10=1e 12=3ff03ff 13=ff5c03c7 14=12b02b7 15=12b02b7 16=1400 17=1600 18=0 19=0 24=ff000100 25=bc 26=1e 28=1 29=1 F=80067000
+ 36: 8=0 9=bc 10=1e 12=3ff03ff 13=ff5c03c7 14=12b02b7 15=12b02b7 16=1200 17=1400 18=1600 19=0 24=ff000100 25=bc 26=1e 28=1 29=1 F=80027000
+ 37: 8=0 10=1e 12=3ff03ff 13=ff5c03c7 14=12b03ff 15=12b03ff 16=1200 17=1400 18=1600 19=0 24=ff000100 26=1e F=80027000
+ 38: 8=0 10=1e 12=3ff03ff 13=ff5c03c7 14=12b03ff 15=12b03ff 16=1200 17=1400 18=1600 19=0 24=ff000100 26=1e F=80027000
+ 39: 8=0 12=3ff03ff 13=fe6c0288 14=fc0003ff 15=fc0003ff 16=1200 17=1400 18=1600 19=0 24=ff000100 F=80007000
+ 3A: 8=0 12=c80050 13=fe6c0288 14=fc0003ff 15=fc0003ff 16=1200 17=1400 18=1600 19=0 24=ff000100 F=80007000
+ 3B: 8=0 12=28012c 13=c80050 14=fc0003ff 15=fc0003ff 24=ff000100 F=80007000
+DPCS (10) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 00000600 00000780 00000900 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 22334455 33445566 30907860 5501AA55
+ 00012345 00000600 00000780 00000900 000049EC 000049EC 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=fe0 9=204 10=30 12=28012c 13=c80050 14=f00144 15=f00144 16=1200 17=1400 18=1600 19=ffff 24=fe0000 25=204 26=30 28=4804 29=4804 F=80440000
+ 03: 8=fe0 10=30 12=28012c 13=c80050 14=f0014c 15=f0014c 16=1200 17=1400 18=1600 19=ffff 24=fe0000 26=30 28=480c 29=480c F=0
+ 04: 8=fe0 12=28012c 13=c80050 14=f000c 15=f000c 24=fe0000 F=0
+ 07: 24=2dd6a410 F=0
+ 08: 24=20abbf50 F=0
+ 09: 24=1a405b80 F=0
+ 0A: 24=2dc495e0 F=0
+ 0D: 9=7fff 10=fffffd30 11=168 25=1fca9 26=fffffd30 27=168 28=81f 29=81f F=81000000
+ 0E: 10=ffff8000 11=7fff 24=ff4bd5d0 26=ffd30000 27=4cd6d 28=7c0c 29=7c0c F=80c00000
+ 15: 9=464 10=569 11=6ef 20=33445566 21=30907860 22=306e5646 25=464 26=569 27=6ef 28=3548 29=3548 F=0
+ 17: 9=4e0 10=643 11=7e8 20=30785c48 21=307d5044 22=307e644e 25=4e0 26=643 27=7e8 28=3d89 29=3d89 F=0
+ 18: 9=4c0 10=5e8 11=740 20=30785c48 21=307d5044 22=30745e4c 25=4c0 26=5e8 27=740 28=3969 29=3969 F=0
+ 19: 9=4c0 10=5e8 11=740 20=30907860 21=307d5044 22=30745e4c 25=4c0 26=5e8 27=740 28=3969 29=3969 F=0
+ 2B: 9=700 10=840 11=980 20=30696a6a 22=30988470 25=700 26=840 27=980 28=4e0e 29=4e0e F=0
+ 2C: 9=700 10=840 11=980 22=30988470 25=700 26=840 27=980 28=4e0e 29=4e0e F=0
+ 2F: 7=ffff 24=2de3edd0 F=80040000
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=fd0148 13=ee0142 14=f4015d 15=f4015d 16=1400 17=1600 18=ffff 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=0
+ 35: 8=fe0 9=bc 10=1e 12=3ff03ff 13=ee0142 14=f00141 15=f00141 16=1400 17=1600 18=ffff 19=ffff 24=fe0000 25=bc 26=1e 28=4801 29=4801 F=80446000
+ 36: 8=fe0 9=bc 10=1e 12=fd0148 13=ee0142 14=f00141 15=f00141 16=1200 17=1400 18=1600 19=ffff 24=fe0000 25=bc 26=1e 28=4801 29=4801 F=0
+ 37: 8=fe0 10=1e 12=fd0148 13=ff5c03c7 14=f0014c 15=f0014c 16=1200 17=1400 18=1600 19=ffff 24=fe0000 26=1e 28=480c 29=480c F=0
+ 38: 8=fe0 10=1e 12=fd0148 13=ee0142 14=f0014c 15=f0014c 16=1200 17=1400 18=1600 19=ffff 24=fe0000 26=1e 28=480c 29=480c F=0
+ 39: 8=fe0 12=d0008 13=fffe0002 14=f000c 15=f000c 16=1200 17=1400 18=1600 19=ffff 24=fe0000 F=0
+ 3A: 8=fe0 12=c80050 13=fffe0002 14=f000c 15=f000c 16=1200 17=1400 18=1600 19=ffff 24=fe0000 F=0
+ 3B: 8=fe0 12=28012c 13=c80050 14=f000c 15=f000c 24=fe0000 F=0
+Done.
+```
+
+[10GT3.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/10GT3.txt)
+
+```
+===== 10 GT3 F16 GTE AFTER 3 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0005 0005 0005, JOY_STAT 00005805 00022005 00018805, DICR 00000000 00000000 00000000
+GTE: the seed loaded (SXYP IRGB ORGB LZCR not written), a command with sf 1, then each
+N/A opcode with sf 1 straight after it. After the command alone all 64 registers (0-31
+data, 32-63 control); after each opcode the ones that differ from that as reg=hex.
+GPF (3D) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 00000091 FFFFFF80 0000022B 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 22334455 33445566 30220009 5501AA55
+ 00012345 00000091 FFFFFF80 0000022B 00001001 00001001 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00100000
+ 02: 8=128 9=204 10=30 12=28012c 13=c80050 14=11c031e 15=11c031e 16=1200 17=1400 18=1600 19=228 24=128d00 25=204 26=30 28=1004 29=1004 F=0
+ 03: 8=0 10=30 12=28012c 13=c80050 14=14f0261 15=14f0261 16=1200 17=1400 18=1600 19=40 24=ff000100 26=30 F=80021000
+ 04: 8=0 12=28012c 13=c80050 14=ff000122 15=ff000122 24=ff000100 F=1000
+ 07: 24=91410 F=0
+ 08: 24=4add0 F=0
+ 09: 24=3ee40 F=0
+ 0A: 24=fff705e0 F=0
+ 0D: 9=138 10=fffffe7f 11=ffffff00 25=138 26=fffffe7f 27=ffffff00 28=2 29=2 F=0
+ 0E: 10=ffff8000 11=ffffff38 24=ffc74ad0 26=ffe7fa00 27=ffffff38 28=1 29=1 F=80800000
+ 15: 9=48e 10=5cb 11=786 20=33445566 21=30220009 22=30785c48 25=48e 26=5cb 27=786 28=3d69 29=3d69 F=0
+ 17: 9=42f 10=4e1 11=62f 20=3081624b 21=30805145 22=30624e42 25=42f 26=4e1 27=62f 28=3128 29=3128 F=0
+ 18: 9=411 10=468 11=58a 20=3081624b 21=30805145 22=30584641 25=411 26=468 27=58a 28=2d08 29=2d08 F=0
+ 19: 9=411 10=468 11=58a 20=30220009 21=30805145 22=30584641 25=411 26=468 27=58a 28=2d08 29=2d08 F=0
+ 2B: 9=448 10=480 11=610 21=30727273 22=30614844 25=448 26=480 27=610 28=3128 29=3128 F=0
+ 2C: 21=30727273 F=0
+ 2F: 7=158 24=165dd0 F=0
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=3ff03ff 13=ff5c03c7 14=f4015d 15=f4015d 16=1400 17=1600 18=4a 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=80026000
+ 35: 8=0 9=bc 10=1e 12=3ff03ff 13=ff5c03c7 14=12b02b7 15=12b02b7 16=1400 17=1600 18=48 19=fc 24=ff000100 25=bc 26=1e F=80027000
+ 36: 8=0 9=bc 10=1e 12=3ff03ff 13=ff5c03c7 14=12b02b7 15=12b02b7 16=1200 17=1400 18=1600 19=0 24=ff000100 25=bc 26=1e F=80027000
+ 37: 8=0 10=1e 12=3ff03ff 13=ff5c03c7 14=12b0261 15=12b0261 16=1200 17=1400 18=1600 19=48 24=ff000100 26=1e F=80027000
+ 38: 8=0 10=1e 12=3ff03ff 13=ff5c03c7 14=12b0261 15=12b0261 16=1200 17=1400 18=1600 19=48 24=ff000100 26=1e F=80027000
+ 39: 8=0 12=3ff03ff 13=fe6c0288 14=ff000122 15=ff000122 16=1200 17=1400 18=1600 19=48 24=ff000100 F=80007000
+ 3A: 8=0 12=c80050 13=fe6c0288 14=ff000122 15=ff000122 16=1200 17=1400 18=1600 19=48 24=ff000100 F=1000
+ 3B: 8=0 12=28012c 13=c80050 14=ff000122 15=ff000122 24=ff000100 F=1000
+MVMVA (12) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 00000204 00000030 00000BC0 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 11223344 22334455 33445566 5501AA55
+ 00012345 00000204 00000030 00000BC0 00005C04 00005C04 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=dcd 12=28012c 13=c80050 14=f60186 15=f60186 16=1200 17=1400 18=1600 19=e90 24=dcd700 F=0
+ 03: 8=d78 12=28012c 13=c80050 14=f70191 15=f70191 16=1200 17=1400 18=1600 19=ca8 24=d78c00 F=0
+ 04: 8=d78 12=28012c 13=c80050 14=70051 15=70051 24=d78c00 F=0
+ 07: 24=cf8c10 F=0
+ 08: 24=cb25d0 F=0
+ 09: 24=ca6640 F=0
+ 0A: 24=bd7de0 F=0
+ 0D: 9=c56 10=fffff6df 11=fffffe49 25=c56 26=fffff6df 27=fffffe49 28=18 29=18 F=0
+ 0E: 10=ffff8000 11=ffffff38 24=febd91d0 26=ff6dfc00 27=ffffff38 28=4 29=4 F=80800000
+ 15: 9=4ba 10=628 11=815 20=22334455 21=33445566 22=3081624b 25=4ba 26=628 27=815 28=4189 29=4189 F=0
+ 17: 9=468 10=53e 11=82c 20=3089684e 21=30835145 22=30825346 25=468 26=53e 27=82c 28=4148 29=4148 F=0
+ 18: 9=440 10=489 11=7f0 20=3089684e 21=30835145 22=307f4844 25=440 26=489 27=7f0 28=3d28 29=3d28 F=0
+ 19: 9=440 10=489 11=7f0 20=33445566 21=30835145 22=307f4844 25=440 26=489 27=7f0 28=3d28 29=3d28 F=0
+ 2B: 20=30616162 21=30696a6a F=0
+ 2C: 21=30696a6a F=0
+ 2F: 7=dc0 24=dcd5d0 F=0
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=2a10264 13=d00173 14=f4015d 15=f4015d 16=1400 17=1600 18=cb1 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=0
+ 35: 8=d9c 9=bc 10=1e 12=3ff03ff 13=d00173 14=f4015c 15=f4015c 16=1400 17=1600 18=cb0 19=d64 24=d9c400 25=bc 26=1e 28=5c01 29=5c01 F=80006000
+ 36: 8=d67 9=bc 10=1e 12=2890254 13=d10170 14=f4015e 15=f4015e 16=1200 17=1400 18=1600 19=c56 24=d67f00 25=bc 26=1e 28=5c01 29=5c01 F=0
+ 37: 8=d7a 10=1e 12=2890254 13=ff5c03c7 14=f40191 15=f40191 16=1200 17=1400 18=1600 19=cb0 24=d7a500 26=1e F=0
+ 38: 8=d7a 10=1e 12=2890254 13=d00173 14=f40191 15=f40191 16=1200 17=1400 18=1600 19=cb0 24=d7a500 26=1e F=0
+ 39: 8=d7a 12=1990114 13=ffe00033 14=70051 15=70051 16=1200 17=1400 18=1600 19=cb0 24=d7a500 F=0
+ 3A: 8=d7a 12=c80050 13=ffe00033 14=70051 15=70051 16=1200 17=1400 18=1600 19=cb0 24=d7a500 F=0
+ 3B: 8=d7a 12=28012c 13=c80050 14=70051 15=70051 24=d7a500 F=0
+Done.
+```
+
+[11GT4.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/11GT4.txt)
+
+```
+===== 11 GT4 F16 GTE AFTER 4 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0005 0005 0005, JOY_STAT 00012005 0000C805 00001805, DICR 00000000 00000000 00000000
+GTE: the seed loaded (SXYP IRGB ORGB LZCR not written), a command with sf 1, then each
+N/A opcode with sf 1 straight after it. After the command alone all 64 registers (0-31
+data, 32-63 control); after each opcode the ones that differ from that as reg=hex.
+CC (1C) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 00000000
+ 00000800 0000007F 000000C6 0000033C 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 22334455 33445566 30330C07 5501AA55
+ 00012345 0000007F 000000C6 0000033C 00001820 00001820 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=db1 9=204 10=30 12=28012c 13=c80050 14=f6018a 15=f6018a 16=1200 17=1400 18=1600 19=de1 24=db1c00 25=204 26=30 28=1804 29=1804 F=0
+ 03: 8=d53 10=30 12=28012c 13=c80050 14=f80155 15=f80155 16=1200 17=1400 18=1600 19=bf9 24=d53c00 26=30 28=1800 29=1800 F=0
+ 04: 8=d53 12=28012c 13=c80050 14=210015 15=210015 24=d53c00 F=0
+ 07: 24=c4abd0 F=0
+ 08: 24=c04590 F=0
+ 09: 24=bf8600 F=0
+ 0A: 24=b29da0 F=0
+ 0D: 9=a8e 10=fffffd6e 11=42 25=a8e 26=fffffd6e 27=42 28=15 29=15 F=0
+ 0E: 10=ffff8000 11=b13 24=ffa63ed0 26=ffd6ed00 27=b13 28=5800 29=5800 F=80800000
+ 15: 9=43f 10=4e2 11=69e 20=33445566 21=30330c07 22=30694e43 25=43f 26=4e2 27=69e 28=3528 29=3528 F=0
+ 17: 9=435 10=511 11=670 20=30725546 21=30855145 22=30675143 25=435 26=511 27=670 28=3148 29=3148 F=0
+ 18: 9=40f 10=4a4 11=5cf 20=30694e43 21=30855145 22=305c4a40 25=40f 26=4a4 27=5cf 28=2d28 29=2d28 F=0
+ 19: 9=40f 10=4a4 11=5cf 20=30330c07 21=30855145 22=305c4a40 25=40f 26=4a4 27=5cf 28=2d28 29=2d28 F=0
+ 2B: 20=30696a6a 21=30727273 F=0
+ 2C: 20=30696a6a F=0
+ 2F: 7=d11 24=d1f590 F=0
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=1480195 13=ce0175 14=f4015d 15=f4015d 16=1400 17=1600 18=c03 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=0
+ 35: 8=d7b 9=bc 10=1e 12=3ff03ff 13=ce0175 14=f4015d 15=f4015d 16=1400 17=1600 18=c01 19=cb5 24=d7b500 25=bc 26=1e 28=1801 29=1801 F=80006000
+ 36: 8=d40 9=bc 10=1e 12=1430190 13=d00172 14=f50160 15=f50160 16=1200 17=1400 18=1600 19=ba7 24=d40f00 25=bc 26=1e 28=1801 29=1801 F=0
+ 37: 8=d55 10=1e 12=1430190 13=ff5c03c7 14=f40155 15=f40155 16=1200 17=1400 18=1600 19=c01 24=d55900 26=1e 28=1800 29=1800 F=0
+ 38: 8=d55 10=1e 12=1430190 13=ce0175 14=f40155 15=f40155 16=1200 17=1400 18=1600 19=c01 24=d55900 26=1e 28=1800 29=1800 F=0
+ 39: 8=d55 12=530050 13=ffde0036 14=210015 15=210015 16=1200 17=1400 18=1600 19=c01 24=d55900 F=0
+ 3A: 8=d55 12=c80050 13=ffde0036 14=210015 15=210015 16=1200 17=1400 18=1600 19=c01 24=d55900 F=0
+ 3B: 8=d55 12=28012c 13=c80050 14=210015 15=210015 24=d55900 F=0
+AVSZ3 (2D) alone:
+ 00800100 00000400 FF800040 00000300 0050FFA0 00000500 30806040 000004FE
+ 00000800 00000123 FFFFFF00 00000456 0014000A 0028012C 00C80050 00C80050
+ 00001000 00001200 00001400 00001600 11223344 22334455 33445566 5501AA55
+ 004FEC00 00000234 FFFFFCBB 00000456 00002002 00002002 00F0F0F0 00000008
+ 00800F00 FF800040 01000F00 0080FFC0 00000F00 00000100 FFFFFF80 00000800
+ 01000800 03000200 FF000900 04000100 00000A00 00000100 00000200 00000300
+ 02000C00 03000100 02000B00 02000100 00000D00 00000800 00000900 00000A00
+ 01400000 00F00000 00000200 FFFFFF00 01000000 00000155 00000100 00000000
+ 02: 8=b65 9=204 10=30 12=28012c 13=c80050 14=fd01d4 15=fd01d4 16=1200 17=1400 18=1600 19=6f4 24=b65d00 25=204 26=30 28=2004 29=2004 F=0
+ 03: 8=9a8 10=30 12=28012c 13=c80050 14=10301b3 15=10301b3 16=1200 17=1400 18=1600 19=50c 24=9a8d00 26=30 F=0
+ 04: 8=9a8 12=28012c 13=c80050 14=ff9a0073 15=ff9a0073 24=9a8d00 F=0
+ 07: 24=55cd10 F=0
+ 08: 24=5166d0 F=0
+ 09: 24=50a740 F=0
+ 0A: 24=43bee0 F=0
+ 0D: 9=6f4 10=fffffd00 11=fffffdff 25=6f4 26=fffffd00 27=fffffdff 28=d 29=d F=0
+ 0E: 10=ffff8000 11=537 24=ff8eced0 26=ffd00300 27=537 28=2802 29=2802 F=80800000
+ 15: 9=43f 10=4e2 11=69e 20=22334455 21=33445566 22=30694e43 25=43f 26=4e2 27=69e 28=3528 29=3528 F=0
+ 17: 9=43f 10=4e2 11=69e 20=30725546 21=30875245 22=30694e43 25=43f 26=4e2 27=69e 28=3528 29=3528 F=0
+ 18: 9=424 10=450 11=615 20=30725546 21=30875245 22=30614542 25=424 26=450 27=615 28=3108 29=3108 F=0
+ 19: 9=424 10=450 11=615 20=33445566 21=30875245 22=30614542 25=424 26=450 27=615 28=3108 29=3108 F=0
+ 2B: 9=730 10=728 11=720 20=30616162 22=30727273 25=730 26=728 27=720 28=39ce 29=39ce F=0
+ 2C: 20=30616162 F=0
+ 2F: 7=624 24=6316d0 F=0
+ 34: 8=d7b 9=bc 10=1e 11=cb4 12=2c20280 13=a001bf 14=f4015d 15=f4015d 16=1400 17=1600 18=515 19=cb4 24=d7b200 25=bc 26=1e 27=cb4 28=6401 29=6401 F=0
+ 35: 8=a77 9=bc 10=1e 12=3ff03ff 13=a001bf 14=fa0181 15=fa0181 16=1400 17=1600 18=514 19=5c8 24=a77000 25=bc 26=1e 28=2001 29=2001 F=80006000
+ 36: 8=93a 9=bc 10=1e 12=2870257 13=aa01b0 14=fc018f 15=fc018f 16=1200 17=1400 18=1600 19=4ba 24=93ad00 25=bc 26=1e 28=2001 29=2001 F=0
+ 37: 8=9b2 10=1e 12=2870257 13=ff5c03c7 14=fb01b2 15=fb01b2 16=1200 17=1400 18=1600 19=514 24=9b2d00 26=1e F=0
+ 38: 8=9b2 10=1e 12=2870257 13=a001bf 14=fb01b2 15=fb01b2 16=1200 17=1400 18=1600 19=514 24=9b2d00 26=1e F=0
+ 39: 8=9b2 12=1970117 13=ffb0007f 14=ff9b0072 15=ff9b0072 16=1200 17=1400 18=1600 19=514 24=9b2d00 F=0
+ 3A: 8=9b2 12=c80050 13=ffb0007f 14=ff9b0072 15=ff9b0072 16=1200 17=1400 18=1600 19=514 24=9b2d00 F=0
+ 3B: 8=9b2 12=28012c 13=c80050 14=ff9b0072 15=ff9b0072 24=9b2d00 F=0
+Done.
+```
+
+[12RXI.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/12RXI.txt)
+
+```
+===== 12 RXI F16 SIO0 RX IRQ | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0005 0005 0005, JOY_STAT 0000A805 00005005 00020005, DICR 00000000 00000000 00000000
+Slot 1 (the pad), CTRL 0803h | mode << 8 (RX IRQ on, no ACK IRQ), 01 42 00 00 00 00 00
+00 sent 2400 cycles apart with none read: JOY_STAT&3FF/I_STAT bit 7 after each.
+Mode 0 (1 bytes): 207/1 207/1 207/1 207/1 207/1 207/1 207/1 207/1; read out 8: FF 41 5A FF FF FF FF FF
+Mode 1 (2 bytes): 007/0 207/1 207/1 207/1 207/1 207/1 207/1 207/1; read out 8: FF 41 5A FF FF FF FF FF
+Mode 2 (4 bytes): 007/0 007/0 007/0 207/1 207/1 207/1 207/1 207/1; read out 8: FF 41 5A FF FF FF FF FF
+Mode 3 (8 bytes): 007/0 007/0 007/0 007/0 007/0 007/0 007/0 207/1; read out 8: FF 41 5A FF FF FF FF FF
+Done.
+```
+
+[13D4B.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/13D4B.txt)
+
+```
+===== 13 D4B F16 DMA4 BLOCKS | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0805 0805 0805, JOY_STAT 00007005 00001805 0001C805, DICR 00000000 00000000 00000000
+DMA4 SPU write, SyncMode 1, to 30000h, cycles from the CHCR write until bit 24 clears,
+three times each. SPU delay register (1F801014h) as found 200931E1.
+Delay 200931E1, blocks of 1 words x 256 (256 words): 16393 16330 16340
+Delay 200931E1, blocks of 2 words x 128 (256 words): 16321 16265 16292
+Delay 200931E1, blocks of 3 words x 85 (255 words): 17186 17174 17626
+Delay 200931E1, blocks of 4 words x 64 (256 words): 18077 18296 18296
+Delay 200931E1, blocks of 5 words x 51 (255 words): 17572 17594 17597
+Delay 200931E1, blocks of 6 words x 42 (252 words): 17024 17008 17009
+Delay 200931E1, blocks of 7 words x 36 (252 words): 16956 16915 16898
+Delay 200931E1, blocks of 8 words x 32 (256 words): 17033 17094 17028
+Delay 200931E1, blocks of 9 words x 28 (252 words): 16576 16579 16585
+Delay 200931E1, blocks of 10 words x 25 (250 words): 16912 16888 16885
+Delay 200931E1, blocks of 11 words x 23 (253 words): 17002 16962 16962
+Delay 200931E1, blocks of 12 words x 21 (252 words): 15823 15829 15829
+Delay 200931E1, blocks of 13 words x 19 (247 words): 16270 16225 16253
+Delay 200931E1, blocks of 14 words x 18 (252 words): 16391 16409 16409
+Delay 200931E1, blocks of 15 words x 17 (255 words): 16579 16594 16579
+Delay 200931E1, blocks of 16 words x 16 (256 words): 16884 16855 16873
+Delay 200931E1, blocks of 32 words x 8 (256 words): 8181 8195 8212
+Delay 200931E1, blocks of 4 words x 64: 18109 18108 18296
+Delay 210931E1, blocks of 4 words x 64: 18070 18063 18063
+Delay 220931E1, blocks of 4 words x 64: 18347 18311 18312
+Delay 230931E1, blocks of 4 words x 64: 19495 19446 19427
+Delay 240931E1, blocks of 4 words x 64: 19461 19519 19529
+Delay 250931E1, blocks of 4 words x 64: 19469 19498 19481
+Delay 260931E1, blocks of 4 words x 64: 21681 21672 21673
+Delay 270931E1, blocks of 4 words x 64: 21689 21637 21704
+Delay 280931E1, blocks of 4 words x 64: 21732 21730 21730
+Delay 290931E1, blocks of 4 words x 64: 24237 24220 24180
+Delay 2A0931E1, blocks of 4 words x 64: 24261 24208 24208
+Delay 2B0931E1, blocks of 4 words x 64: 24232 24223 24186
+Delay 2C0931E1, blocks of 4 words x 64: 24264 24262 24262
+Delay 2D0931E1, blocks of 4 words x 64: 24304 24258 24281
+Delay 2E0931E1, blocks of 4 words x 64: 24297 24283 24272
+Delay 2F0931E1, blocks of 4 words x 64: 24312 24297 24325
+SPU delay register back to 200931E1
+Done.
+```
+
+[14COM.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/14COM.txt)
+
+```
+===== 14 COM F16 COM0 COM1 | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0805 0805 0805, JOY_STAT 00013005 0000D805 00006805, DICR 00000000 00000000 00000000
+100 turns of an SPU KOFF sh and of a POST (1F802041h) sb, from the cache, warm, under
+COM0 0-2, the device's bit 8 set or clear, COM1 0-1, write delay 0-4; the rest as found.
+As found: COM_DELAY 00031125, SPU 200931E1, Expansion 2 00070777. Rows: write delay 0-4.
+COM0 0 bit 8 1 COM1 0: SPU sh 450 446 531 628 727; POST sb 646 646 646 646 722
+COM0 0 bit 8 1 COM1 1: SPU sh 450 446 531 628 727; POST sb 646 646 646 722 820
+COM0 0 bit 8 0 COM1 0: SPU sh 450 446 531 628 727; POST sb 646 646 648 646 722
+COM0 0 bit 8 0 COM1 1: SPU sh 450 446 531 628 727; POST sb 646 646 646 722 820
+COM0 1 bit 8 1 COM1 0: SPU sh 450 446 531 628 727; POST sb 646 646 646 646 722
+COM0 1 bit 8 1 COM1 1: SPU sh 450 446 531 628 727; POST sb 646 646 650 722 820
+COM0 1 bit 8 0 COM1 0: SPU sh 450 446 531 628 727; POST sb 646 646 646 646 722
+COM0 1 bit 8 0 COM1 1: SPU sh 450 446 531 628 727; POST sb 646 646 650 722 820
+COM0 2 bit 8 1 COM1 0: SPU sh 450 530 627 726 817; POST sb 646 646 646 728 819
+COM0 2 bit 8 1 COM1 1: SPU sh 450 530 627 726 817; POST sb 646 646 728 819 918
+COM0 2 bit 8 0 COM1 0: SPU sh 456 446 531 628 727; POST sb 646 646 646 646 722
+COM0 2 bit 8 0 COM1 1: SPU sh 450 446 531 628 727; POST sb 646 646 646 722 820
+Put back: COM_DELAY 00031125, SPU 200931E1, Expansion 2 00070777
+Done.
+```
+
+[15BRD.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/15BRD.txt)
+
+```
+===== 15 BRD F16 BIOS READ DELAY | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0005 0005 0005, JOY_STAT 0001B805 00016005 0000F005, DICR 00000000 00000000 00000000
+BIOS lw, lhu and lbu of BFC00000h-BFC0001Fh at read delay 0 to 3; before each, a lw of
+its word at the delay as found, then the delay written, the read, the delay put back.
+BIOS delay as found 0013243F, now 0013243F. Words at it: 3C080013 3508243F 3C011F80 AC281010 00000000 24080B88 3C011F80 AC281060
+Read delay 0 lw: FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF
+ lhu: FFFF FFFF FFF5 FFF5 FFFF FFFF FFAF FFAF FFFF FFFF FFFF FFFF FFFF FFFF FFAF FFAF
+ lbu: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
+Read delay 1 lw: 08001BFF 2C243FFF 011FBCFF 281038FF 000000FF 080BACFF 111FBCFF 2810E8FF
+ lhu: 1FFF 3CFF 3FFF 3DFF 9CFF 3DFF BCFF ACFF 00FF 00FF ACFF 2CFF BCFF 3DFF E8FF ACFF
+ lbu: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
+Read delay 2 lw: 3C080013 3508243F 3C011F80 AC281010 00000000 24080B88 3C011F80 AC281060
+ lhu: 0013 3C08 243F 3508 1F80 3C01 1010 AC28 0000 0000 0B88 2408 1F80 3C01 1060 AC28
+ lbu: 13 00 08 3C 3F 24 08 35 80 1F 01 3C 10 10 28 AC 00 00 00 00 88 0B 08 24 80 1F 01 3C 60 10 28 AC
+Read delay 3 lw: 3C080013 3508243F 3C011F80 AC281010 00000000 24080B88 3C011F80 AC281060
+ lhu: 0013 3C08 243F 3508 1F80 3C01 1010 AC28 0000 0000 0B88 2408 1F80 3C01 1060 AC28
+ lbu: 13 00 08 3C 3F 24 08 35 80 1F 01 3C 10 10 28 AC 00 00 00 00 88 0B 08 24 80 1F 01 3C 60 10 28 AC
+Done.
+```
+
+[16F8W.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/16F8W.txt)
+
+```
+===== 16 F8W F16 1F8010F8 WRITES | BIOS 19951204 System ROM Version 3.0 11/18/96 A
+BadVaddr as the group starts: 00000480
+First reads, twice back to back then 1000 cycles on: I_STAT 950D0000 950D0000 950D0000, GPUSTAT
+5606200F 5606200F 5606200F, SPUSTAT 0805 0805 0805, JOY_STAT 00011005 0000B805 00002005, DICR 00000000 00000000 00000000
+1F8010F8h written by sw: 0, then FFFFFFFFh, then DMA6 and DMA2 runs, then the value
+as found written back.
+As found: lw 7FEB1A23, lhu +0 1A23 +2 7FEB, lbu 23 1A EB 7F; 1F8010FCh lw 00FFFFFF
+After sw 0: lw 7FEB1A23, lhu +0 1A23 +2 7FEB, lbu 23 1A EB 7F; 1F8010FCh lw 00FFFFFF
+After sw FFFFFFFFh: lw 7FEB1A23, lhu +0 1A23 +2 7FEB, lbu 23 1A EB 7F; 1F8010FCh lw 00FFFFFF
+Then after DMA6 OTC 256: lw 7FE32A63, lhu +0 2A63 +2 7FE3, lbu 63 2A E3 7F; 1F8010FCh lw 00FFFFFF
+Then after a DMA2 list of 1024 empty nodes: lw 7FE72A23, lhu +0 2A23 +2 7FE7, lbu 23 2A E7 7F; 1F8010FCh lw 00FFFFFF
+After the value as found written back: lw 7FE72A23, lhu +0 2A23 +2 7FE7, lbu 23 2A E7 7F; 1F8010FCh lw 00FFFFFF
+Done.
+```
+
+## References
+
+[^run]: SCPH-5501 output: [followup16/01S1M.txt](/tests/raw/20261003T0000Z-5501a-card-o/followup16/01S1M.txt) and the files beside it, listed under Runs.