GTE Input Timing and CD-ROM Queries: Difference between revisions
| Revision as of 05:41, 23 October 2026 RemmyLee (Hardware tests: See also links back from 37 existing pages to the new ones) | Revision as of 05:49, 23 October 2026 RemmyLee (Hardware tests: the last 15 test pages (timers, SPU, CPU, GPU, DMA, CD-ROM, GTE), See also links both ways; uncited clock claim removed) | ||
| Line 1: | Line 1: | ||
| + | --- | ||
| + | title: GTE Input Timing and CD-ROM Queries | ||
| + | type: test | ||
| + | summary: Measures how many instructions after a GTE command its inputs can still be written, and how the CD-ROM controller answers Test 19h, GetTN, GetTD and GetQ. | ||
| + | category: Hardware tests | ||
| + | info: Machine = SCPH-5501 | ||
| + | info: Program = followup34 and followup34d | ||
| + | --- | ||
| + | |||
| + | ## Overview | ||
| + | |||
| + | The first version of the program runs three groups: two on the GTE and one on CD-ROM Test 19h with no disc. The later version waits for a disc and runs four groups with it. The disc in the drive had 12 tracks and a lead-out at 69:22, and the program reported it as not licensed.[^run][^din] | ||
| + | |||
| + | Table: Groups | ||
| + | |||
| + | | Tag | Version | Group | | ||
| + | | --- | --- | --- | | ||
| + | | GKF | followup34 | RTPS, RTPT, NCS, CDP, GPL, NCLIP and SQR with one input written n instructions before or after the command, run from KSEG1, from a cache emptied by FlushCache and warm | | ||
| + | | RTL | followup34 | RTPT and RTPS with OFX, OFY or DQB written 0 to 16 instructions after, warm, 8 times each | | ||
| + | | TSR | followup34 | Test 19h with sub-functions 07h, 09h, 0Bh and 01h 00h, 16 times each with no disc, and 19h 07h sent 0 to 62,000 cycles after a Getstat answer | | ||
| + | | DIN | followup34d | The disc goes in: GetID, the unlock commands, GetTN and GetTD for every track | | ||
| + | | TTD | followup34d | GetTN and GetTD three times, after a swept wait, during a ReadN and after Init | | ||
| + | | PKL | followup34d | Play reports with Report on, twice from one sector, at double speed and on the data track, and GetQ after audio and after a data read | | ||
| + | | HLD | followup34d | ReadN from sector 2000 with the first INT1 left unacknowledged for 0 to 12 sector times | | ||
| + | | GQP | followup34d | GetQ for track 13, past the last track, with every interrupt for 15 seconds, four times | | ||
| + | |||
| + | See also: | ||
| + | |||
| + | - [GTE Input Timing and I/O Load Pairs](/tests/gte-input-timing/) | ||
| + | - [CPU Load Pairs and GTE Input Timing](/tests/cpu-load-pairs/) | ||
| + | |||
| + | ## Results | ||
| + | |||
| + | ### GTE Input Written After the Command | ||
| + | |||
| + | Each row prints one result register, and its value shows whether the command used the input written after it. Warm, RTPT used an OFX written up to 10 instructions after it, an OFY up to 11 and a DQB up to 15. RTPS used an OFX written up to 1 instruction after it every time and up to 4 instructions in 7 of 8 runs, an OFY up to 1 every time and up to 5 in 7 of 8 runs, and a DQB up to 7.[^rtl] | ||
| + | |||
| + | Table: Last instruction after the command at which the warm command used the new input | ||
| + | |||
| + | | Command | Input | Every run | 7 of 8 runs | | ||
| + | | --- | --- | --- | --- | | ||
| + | | RTPT | OFX | 10 | 10 | | ||
| + | | RTPT | OFY | 11 | 11 | | ||
| + | | RTPT | DQB | 15 | 15 | | ||
| + | | RTPS | OFX | 1 | 4 | | ||
| + | | RTPS | OFY | 1 | 5 | | ||
| + | | RTPS | DQB | 7 | 7 | | ||
| + | |||
| + | The code ran from KSEG1, from a cache emptied by FlushCache just before, or warm. From KSEG1 the command used an input written after it in only one case, which was RTPT with OFX written straight after it. From the emptied cache it used inputs written up to 1 or 2 instructions after, and up to 5 for RTPT with OFX.[^gkf] | ||
| + | |||
| + | Table: Last instruction after the command at which the input was used in GKF | ||
| + | |||
| + | | Command | Input | KSEG1 | Emptied cache | Warm | | ||
| + | | --- | --- | --- | --- | --- | | ||
| + | | RTPS | OFX | none | 1 | 4 | | ||
| + | | RTPS | DQB | none | 2 | 7 | | ||
| + | | RTPT | OFX | 0 | 5 | 10 | | ||
| + | | NCS | VZ0 | none | 1 | 1 | | ||
| + | | NCS | RBK | none | 1 | 2 | | ||
| + | | NCS | BBK | none | 1 | 5 | | ||
| + | | CDP | RGBC | none | 1 | 2 | | ||
| + | |||
| + | An input written before the command behaved the other way round. RTPS with TRZ written 1 instruction before it used the new TRZ from KSEG1 but the old one from the emptied and the warm cache, and with TRZ written 2 or more before it used the new value in every state. SQR with IR1 written 1 instruction before it behaved the same way.[^gkf] | ||
| + | |||
| + | ### Test 19h With No Disc | ||
| + | |||
| + | Test 19h with sub-functions 07h, 09h and 0Bh answered INT5 with 01 10 in every try. The answer came 28,199 to 41,303 cycles after the command. Test 19h 01h 00h answered INT5 with 01 20 after 28,927 to 38,752 cycles. Sent 0 to 62,000 cycles after a Getstat answer, 19h 07h answered after 23,014 to 39,607 cycles. The answer time did not follow the wait.[^tsr] | ||
| + | |||
| + | ### GetTN and GetTD | ||
| + | |||
| + | GetTN answered 01 12 and GetTD gave the same 13 times in all three passes. Each answer came 22,925 to 154,002 cycles after its command. The answers stayed the same after waits of 0 to 60,000 cycles. They also stayed the same during a ReadN from sector 2000 and straight after Init. The Pause after that ReadN answered INT5 03.[^ttd] | ||
| + | |||
| + | ### GetQ Bytes | ||
| + | |||
| + | Each GetQ in the lead-in answered INT2 with 11 bytes. The 11th byte was FCh or 9Fh in every answer after audio play and in every answer after a data read.[^pkl] | ||
| + | |||
| + | ### Held First Sector Interrupt | ||
| + | |||
| + | Sector 2000 has the header 00:28:50. With the first INT1 left unacknowledged for 0 to 5.5 sector times, the data read afterwards had that header. With 6 to 12 sector times the data had the header 00:28:58, eight sectors later, while GetlocL gave 00:28:56 to 00:28:62.[^hld] | ||
| + | |||
| + | ### GetQ Past the Last Track | ||
| + | |||
| + | GetQ for track 13 answered INT3 22 at once, and the further answers differed between the four copies. In copy 1 it answered INT5 06 04 after 287,554,769 cycles and INT5 04 40 after 357,002,849. In copies 2 and 4 it answered INT5 26 40 after about 359,000,000 cycles. Copy 3 gave no INT5 in the 15 seconds and gave INT1 22 about every 450,000 cycles.[^gqp] | ||
| + | |||
| + | ## Runs | ||
| + | |||
| + | ### 5 October 2026 followup34 | ||
| + | |||
| + | [followup34/00RUN.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/00RUN.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 00 RUN | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | 3 tests | ||
| + | A chain program, linked at 80100000 | ||
| + | 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 8001B04C PRId 00000002 | ||
| + | ``` | ||
| + | |||
| + | [followup34/01GKF.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/01GKF.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 01 GKF F34 GTE KSEG1 FLUSHED | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | GTE rows by state (old 00010002, new 00030004), 4 runs each: KSEG1, a cache emptied by FlushCache just before, and warm (run twice, the second read). t_run 80105720, gte_pre 80104CB4, gte_ctrl 801049F0. | ||
| + | RTPS, TRZ (MAC3), written 0 before (copy at 80112F20, command word 0): KSEG1 00010002; flushed 00010002; warm 00010002. | ||
| + | RTPS, TRZ (MAC3), written 1 before (copy at 80112F20, command word 1): KSEG1 00030004; flushed 00010002; warm 00010002. | ||
| + | RTPS, TRZ (MAC3), written 2 before (copy at 80112F20, command word 2): KSEG1 00030004; flushed 00030004; warm 00030004. | ||
| + | RTPS, TRZ (MAC3), written 3 before (copy at 80112F20, command word 3): KSEG1 00030004; flushed 00030004; warm 00030004. | ||
| + | RTPS, OFX (SXY2), written 0 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000003; warm 00000003. | ||
| + | RTPS, OFX (SXY2), written 1 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000003; warm 00000003. | ||
| + | RTPS, OFX (SXY2), written 2 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | RTPS, OFX (SXY2), written 3 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | RTPS, OFX (SXY2), written 4 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | RTPS, OFX (SXY2), written 5 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000001. | ||
| + | RTPS, OFX (SXY2), written 6 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000001. | ||
| + | RTPS, OFX (SXY2), written 7 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000001. | ||
| + | RTPS, OFX (SXY2), written 8 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000001. | ||
| + | RTPS, DQB (IR0), written 0 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000030; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 1 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000030; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 2 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000030; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 3 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000010; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 4 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000010; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 5 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000010; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 6 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000010; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 7 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000010; warm 00000030. | ||
| + | RTPS, DQB (IR0), written 8 after (copy at 80112F20, command word 3): KSEG1 00000010; flushed 00000010; warm 00000010. | ||
| + | RTPT, OFX (SXY0), written 0 after (copy at 80112F20, command word 3): KSEG1 00000003; flushed 00000003; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 1 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000003; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 2 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000003; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 3 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000003; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 4 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000003; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 5 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000003; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 6 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 7 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 8 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 9 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | RTPT, OFX (SXY0), written 10 after (copy at 80112F20, command word 3): KSEG1 00000001; flushed 00000001; warm 00000003. | ||
| + | NCS, VZ0 (MAC3), written 0 after (copy at 80112F20, command word 3): KSEG1 00000002; flushed 00000004; warm 00000004. | ||
| + | NCS, VZ0 (MAC3), written 1 after (copy at 80112F20, command word 3): KSEG1 00000002; flushed 00000004; warm 00000004. | ||
| + | NCS, VZ0 (MAC3), written 2 after (copy at 80112F20, command word 3): KSEG1 00000002; flushed 00000002; warm 00000002. | ||
| + | NCS, VZ0 (MAC3), written 3 after (copy at 80112F20, command word 3): KSEG1 00000002; flushed 00000002; warm 00000002. | ||
| + | NCS, VZ0 (MAC3), written 4 after (copy at 80112F20, command word 3): KSEG1 00000002; flushed 00000002; warm 00000002. | ||
| + | NCS, RBK (MAC1), written 0 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00030004; warm 00030004. | ||
| + | NCS, RBK (MAC1), written 1 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00030004; warm 00030004. | ||
| + | NCS, RBK (MAC1), written 2 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00030004. | ||
| + | NCS, RBK (MAC1), written 3 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00010002. | ||
| + | NCS, RBK (MAC1), written 4 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00010002. | ||
| + | NCS, BBK (MAC3), written 0 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00030004; warm 00030004. | ||
| + | NCS, BBK (MAC3), written 1 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00030004; warm 00030004. | ||
| + | NCS, BBK (MAC3), written 2 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00030004. | ||
| + | NCS, BBK (MAC3), written 3 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00030004. | ||
| + | NCS, BBK (MAC3), written 4 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00030004. | ||
| + | NCS, BBK (MAC3), written 5 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00030004. | ||
| + | NCS, BBK (MAC3), written 6 after (copy at 80112F20, command word 3): KSEG1 00010002; flushed 00010002; warm 00010002. | ||
| + | CDP, RGBC (MAC1), written 0 after (copy at 80112F20, command word 3): KSEG1 00000040; flushed 00000080; warm 00000080. | ||
| + | CDP, RGBC (MAC1), written 1 after (copy at 80112F20, command word 3): KSEG1 00000040; flushed 00000080; warm 00000080. | ||
| + | CDP, RGBC (MAC1), written 2 after (copy at 80112F20, command word 3): KSEG1 00000040; flushed 00000040; warm 00000080. | ||
| + | CDP, RGBC (MAC1), written 3 after (copy at 80112F20, command word 3): KSEG1 00000040; flushed 00000040; warm 00000040. | ||
| + | CDP, RGBC (MAC1), written 4 after (copy at 80112F20, command word 3): KSEG1 00000040; flushed 00000040; warm 00000040. | ||
| + | GPL, MAC3, written 0 after (copy at 80112F20, command word 3): KSEG1 00030004; flushed 00010002; warm 00010002. | ||
| + | GPL, MAC3, written 1 after (copy at 80112F20, command word 3): KSEG1 00030004; flushed 00030004; warm 00010000. | ||
| + | GPL, MAC3, written 2 after (copy at 80112F20, command word 3): KSEG1 00030004; flushed 00030004; warm 00030004. | ||
| + | NCLIP, SXY2 (MAC0), written 0 after (copy at 80112F20, command word 3): KSEG1 FFFFFFE0; flushed FFFFFFE0; warm FFFFFFE0. | ||
| + | NCLIP, SXY2 (MAC0), written 1 after (copy at 80112F20, command word 3): KSEG1 FFFFFFE0; flushed FFFFFFE0; warm FFFFFFE0. | ||
| + | NCLIP, SXY2 (MAC0), written 2 after (copy at 80112F20, command word 3): KSEG1 FFFFFFE0; flushed FFFFFFE0; warm FFFFFFE0. | ||
| + | SQR, IR1 (MAC1), written 0 before (copy at 80112F20, command word 0): KSEG1 00000004; flushed 00000004; warm 00000004. | ||
| + | SQR, IR1 (MAC1), written 1 before (copy at 80112F20, command word 1): KSEG1 00000010; flushed 00000004; warm 00000004. | ||
| + | SQR, IR1 (MAC1), written 2 before (copy at 80112F20, command word 2): KSEG1 00000010; flushed 00000010; warm 00000010. | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | [followup34/02RTL.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/02RTL.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 02 RTL F34 RTPT LATE READS | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | RTPT and RTPS with OFX, OFY or DQB written n after (old 00010002, new 00030004), warm (run twice, the second read), 8 times each; each line gives SXY0 SXY1 SXY2 IR0 and how many runs gave them. t_run 80105720. | ||
| + | RTPT, OFX written 0 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 1 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 2 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 3 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 4 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 5 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 6 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 7 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 8 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 9 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 10 after (command word 3): 00000003 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 11 after (command word 3): 00000001 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 12 after (command word 3): 00000001 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 13 after (command word 3): 00000001 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 14 after (command word 3): 00000001 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 15 after (command word 3): 00000001 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPT, OFX written 16 after (command word 3): 00000001 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 0 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 1 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 2 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 3 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 4 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 5 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 6 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 7 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 8 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 9 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 10 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 11 after (command word 3): 00030000 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 12 after (command word 3): 00010000 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 13 after (command word 3): 00010000 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 14 after (command word 3): 00010000 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 15 after (command word 3): 00010000 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPT, OFY written 16 after (command word 3): 00010000 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPT, DQB written 0 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 1 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 2 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 3 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 4 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 5 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 6 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 7 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 8 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 9 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 10 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 11 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 12 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 13 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 14 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 15 after (command word 3): 00000000 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPT, DQB written 16 after (command word 3): 00000000 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, OFX written 0 after (command word 3): 00000010 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 1 after (command word 3): 00000010 00000003 00000003 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 2 after (command word 3): 00000010 00000001 00000003 00000000 in 1 of 8; 00000010 00000003 00000003 00000000 in 7 of 8. | ||
| + | RTPS, OFX written 3 after (command word 3): 00000010 00000001 00000003 00000000 in 1 of 8; 00000010 00000003 00000003 00000000 in 7 of 8. | ||
| + | RTPS, OFX written 4 after (command word 3): 00000010 00000001 00000003 00000000 in 1 of 8; 00000010 00000003 00000003 00000000 in 7 of 8. | ||
| + | RTPS, OFX written 5 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 6 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 7 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 8 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 9 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 10 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 11 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 12 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 13 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 14 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 15 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFX written 16 after (command word 3): 00000010 00000001 00000001 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 0 after (command word 3): 00000010 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 1 after (command word 3): 00000010 00030000 00030000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 2 after (command word 3): 00000010 00010000 00030000 00000000 in 1 of 8; 00000010 00030000 00030000 00000000 in 7 of 8. | ||
| + | RTPS, OFY written 3 after (command word 3): 00000010 00010000 00030000 00000000 in 1 of 8; 00000010 00030000 00030000 00000000 in 7 of 8. | ||
| + | RTPS, OFY written 4 after (command word 3): 00000010 00010000 00030000 00000000 in 1 of 8; 00000010 00030000 00030000 00000000 in 7 of 8. | ||
| + | RTPS, OFY written 5 after (command word 3): 00000010 00010000 00030000 00000000 in 1 of 8; 00000010 00030000 00030000 00000000 in 7 of 8. | ||
| + | RTPS, OFY written 6 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 7 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 8 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 9 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 10 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 11 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 12 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 13 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 14 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 15 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, OFY written 16 after (command word 3): 00000010 00010000 00010000 00000000 in 8 of 8. | ||
| + | RTPS, DQB written 0 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 1 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 2 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 3 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 4 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 5 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 6 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 7 after (command word 3): 00000010 00000000 00000000 00000030 in 8 of 8. | ||
| + | RTPS, DQB written 8 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 9 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 10 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 11 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 12 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 13 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 14 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 15 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | RTPS, DQB written 16 after (command word 3): 00000010 00000000 00000000 00000010 in 8 of 8. | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | [followup34/03TSR.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/03TSR.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 03 TSR F34 TEST REFUSAL TIMES | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | Test 19h refusals with no disc: each row 16 times as TSN sent it, then 19h 07 after a wait swept from 0 to 62000 cycles. | ||
| + | Switches (Test 21h, bit1 door open, bit0 head at POS0): int3 01 @22308. Getstat: int3 00 @29011. Mode 20. HINTMSK was 1F. | ||
| + | 19h 07, 16 times (the answer, then each time; a different answer in brackets): int5 01 10 @37838; 37838 33623 37453 37117 28237 33676 33674 35209 35786 28243 33674 33671 37466 41303 28246 33677 | ||
| + | 19h 09, 16 times (the answer, then each time; a different answer in brackets): int5 01 10 @29506; 29506 28199 33671 34009 28201 35213 35245 28243 33661 33674 37945 37127 28199 33709 34055 35197 | ||
| + | 19h 0B, 16 times (the answer, then each time; a different answer in brackets): int5 01 10 @31100; 31100 33617 28247 35210 35786 33674 33671 33671 37117 38041 33671 33661 28202 35209 28246 33677 | ||
| + | 19h 01 00, 16 times (the answer, then each time; a different answer in brackets): int5 01 20 @28927; 28927 36786 34771 34779 34769 38231 38566 38752 34817 34779 35307 36699 36311 36887 29293 34817 | ||
| + | 19h 07 sent w cycles after a Getstat's answer, twice each (w: the INT5's cycle): | ||
| + | 0:34980 0:35144 2000:31600 2000:31606 4000:29585 4000:29624 6000:31400 6000:31069 | ||
| + | 8000:31261 8000:29000 10000:37453 10000:37406 12000:26370 12000:25594 14000:38899 14000:33089 | ||
| + | 16000:25257 16000:31113 18000:29482 18000:29096 20000:27855 20000:26899 22000:24929 22000:24543 | ||
| + | 24000:24259 24000:38035 26000:25122 26000:25113 28000:39558 28000:24631 30000:32122 30000:27560 | ||
| + | 32000:26556 32000:35823 34000:27994 34000:26803 36000:39607 36000:24104 38000:27560 38000:37414 | ||
| + | 40000:37880 40000:25593 42000:33943 42000:33856 44000:23959 44000:27085 46000:27029 46000:27569 | ||
| + | 48000:28230 48000:27416 50000:25399 50000:23014 52000:30440 52000:24159 54000:26993 54000:26983 | ||
| + | 56000:27274 56000:26946 58000:24836 58000:31938 60000:37882 60000:28278 62000:35718 62000:23345 | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | ### 5 October 2026 followup34d | ||
| + | |||
| + | [followup34d/00RUN.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/00RUN.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 00 RUN | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | 5 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 8010DB20 DCIC 00000000 BadVaddr 00000480 BDAM 00000000 | ||
| + | BPCM 00000000 SR 40000000 Cause 00000020 EPC 8010E6D4 PRId 00000002 | ||
| + | ``` | ||
| + | |||
| + | [followup34d/01DIN.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/01DIN.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 01 DIN F34 DISC IN | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | The disc goes in: the wait for the lid, GetID, GetTN, GetTD for every track. | ||
| + | Switches (Test 21h, bit1 door open, bit0 head at POS0): int3 00 @67570. Getstat: int3 02 @29832. Mode 20. HINTMSK was 1F. | ||
| + | Asked for the Twisted Metal 2 disc on the screen. | ||
| + | Waited 0 tenths of a second. Getstat 02. | ||
| + | GetID stopped answering error 80h after 0 tries: int3 02 @48533 int5 0A 90 20 00 00 00 00 00 @69317 (not licensed) | ||
| + | Unlock replies (50h-56h): 50: int5 03 40 @38622 51: int5 03 40 @122412 52: int5 03 40 @41597 53: int5 03 40 @50661 54: int5 03 40 @105949 55: int5 03 40 @54986 56: int5 03 40 @183389 | ||
| + | GetTN: int3 02 01 12 @60079 | ||
| + | GetTD 00: int3 02 69 22 @30549 | ||
| + | GetTD 01: int3 02 00 02 @40928 | ||
| + | GetTD 02: int3 02 39 34 @31128 | ||
| + | GetTD 03: int3 02 42 35 @43321 | ||
| + | GetTD 04: int3 02 45 42 @31503 | ||
| + | GetTD 05: int3 02 48 34 @41023 | ||
| + | GetTD 06: int3 02 51 24 @31514 | ||
| + | GetTD 07: int3 02 54 12 @34637 | ||
| + | GetTD 08: int3 02 57 55 @31517 | ||
| + | GetTD 09: int3 02 60 59 @57339 | ||
| + | GetTD 10: int3 02 64 06 @49989 | ||
| + | GetTD 11: int3 02 65 23 @82419 | ||
| + | GetTD 12: int3 02 66 22 @32042 | ||
| + | Tracks 1 to 12, the lead-out at sector 312000. The disc groups run. | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | [followup34d/02TTD.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/02TTD.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 02 TTD F34 GETTN GETTD TIMES | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | GetTN and GetTD answer times: DIN's order three times, after a swept wait, during a ReadN and after Init. | ||
| + | Switches (Test 21h, bit1 door open, bit0 head at POS0): int3 00 @24483. Getstat: int3 02 @41977. Mode 20. HINTMSK was 1F. | ||
| + | Pass 1: GetID int3 02 @21366 int5 0A ..(8) @41670, the unlock, GetTN int3 02 01 12 @49843 | ||
| + | GetTD: 00 69 22 @71471, 01 00 02 @39410, 02 39 34 @28907, 03 42 35 @40855, 04 45 42 @29252, 05 48 34 @65539, 06 51 24 @29731, 07 54 12 @41683, 08 57 55 @88947, 09 60 59 @38947, 10 64 06 @29827, 11 65 23 @40854, 12 66 22 @29485 | ||
| + | Pass 2: GetID int3 02 @58037 int5 0A ..(8) @78837, the unlock, GetTN int3 02 01 12 @33039 | ||
| + | GetTD: 00 69 22 @154002, 01 00 02 @74445, 02 39 34 @28867, 03 42 35 @50558, 04 45 42 @29299, 05 48 34 @48631, 06 51 24 @29665, 07 54 12 @53204, 08 57 55 @29243, 09 60 59 @48595, 10 64 06 @29287, 11 65 23 @40863, 12 66 22 @55495 | ||
| + | Pass 3: GetID int3 02 @32981 int5 0A ..(8) @52789, the unlock, GetTN int3 02 01 12 @92772 | ||
| + | GetTD: 00 69 22 @40628, 01 00 02 @38887, 02 39 34 @28907, 03 42 35 @41383, 04 45 42 @35348, 05 48 34 @38948, 06 51 24 @29252, 07 54 12 @42259, 08 57 55 @88991, 09 60 59 @38941, 10 64 06 @29286, 11 65 23 @41395, 12 66 22 @29478 | ||
| + | GetTN, then GetTD 05, each sent w cycles after the answer before it: | ||
| + | w 0: GetTN int3 02 01 12 @92265, GetTD 05 int3 02 48 34 @44586 | ||
| + | w 4000: GetTN int3 02 01 12 @40986, GetTD 05 int3 02 48 34 @56430 | ||
| + | w 8000: GetTN int3 02 01 12 @27348, GetTD 05 int3 02 48 34 @40742 | ||
| + | w 12000: GetTN int3 02 01 12 @90262, GetTD 05 int3 02 48 34 @29801 | ||
| + | w 16000: GetTN int3 02 01 12 @27009, GetTD 05 int3 02 48 34 @32621 | ||
| + | w 20000: GetTN int3 02 01 12 @34117, GetTD 05 int3 02 48 34 @27641 | ||
| + | w 24000: GetTN int3 02 01 12 @92512, GetTD 05 int3 02 48 34 @26629 | ||
| + | w 28000: GetTN int3 02 01 12 @22925, GetTD 05 int3 02 48 34 @71590 | ||
| + | w 32000: GetTN int3 02 01 12 @37954, GetTD 05 int3 02 48 34 @73466 | ||
| + | w 36000: GetTN int3 02 01 12 @24654, GetTD 05 int3 02 48 34 @41754 | ||
| + | w 40000: GetTN int3 02 01 12 @32205, GetTD 05 int3 02 48 34 @29894 | ||
| + | w 44000: GetTN int3 02 01 12 @44684, GetTD 05 int3 02 48 34 @31723 | ||
| + | w 48000: GetTN int3 02 01 12 @63536, GetTD 05 int3 02 48 34 @37906 | ||
| + | w 52000: GetTN int3 02 01 12 @53358, GetTD 05 int3 02 48 34 @39115 | ||
| + | w 56000: GetTN int3 02 01 12 @48716, GetTD 05 int3 02 48 34 @30369 | ||
| + | w 60000: GetTN int3 02 01 12 @116858, GetTD 05 int3 02 48 34 @61717 | ||
| + | ReadN from sector 2000 at 1x: int3 02 @52576 | ||
| + | GetTN: int3 02 01 12 @55777 GetTD 05: int3 02 48 34 @49232 GetTD 09: int3 02 60 59 @77244 | ||
| + | GetTD 10: int3 02 64 06 @30609 GetTD 12: int3 02 66 22 @32385 | ||
| + | Pause: int5 03 ..(2) @25817 none (after 0 INT1) | ||
| + | Init: int3 02 @74607 int2 02 @2684223 | ||
| + | at once: GetTN int3 02 01 12 @34880, GetTD 05 int3 02 48 34 @33679 | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | [followup34d/03PKL.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/03PKL.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 03 PKL F34 PEAK LEVEL | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | The peak bytes of Play's reports and GetQ's 11th byte: audio twice from one sector, double speed, the data track, then GetQ. | ||
| + | Switches (Test 21h, bit1 door open, bit0 head at POS0): int3 00 @22274. Getstat: int3 02 @29782. Mode 20. HINTMSK was 1F. | ||
| + | Play from one second into track 2, every report for 3 s, mode 04: | ||
| + | Setloc 177975 (39:35:00), Play: int3 02 @62455 | ||
| + | int1 82 02 01 00 80 74 0B FF @86214631 | ||
| + | int1 82 02 01 39 35 60 F2 FF @90733751 | ||
| + | int1 82 02 01 00 81 19 F8 FF @95255607 | ||
| + | int1 82 02 01 39 36 00 FB 7F @97505751 | ||
| + | Pause: int3 82 @28906 int2 02 @7477322 (after 0 INT1) | ||
| + | The same again from the same sector, mode 04: | ||
| + | Setloc 177975 (39:35:00), Play: int3 02 @44700 | ||
| + | int1 82 02 01 39 35 60 2F 7F @37108876 | ||
| + | int1 82 02 01 00 81 19 0A 7F @41624284 | ||
| + | int1 82 02 01 39 36 00 FF FF @43881500 | ||
| + | int1 82 02 01 00 81 34 FE FF @48395964 | ||
| + | int1 82 02 01 39 36 20 FC FF @52916812 | ||
| + | int1 82 02 01 00 81 54 FF FF @57443932 | ||
| + | int1 82 02 01 39 36 40 EF FF @61947628 | ||
| + | int1 82 02 01 00 81 74 F0 FF @66463564 | ||
| + | int1 82 02 01 39 36 60 FF FF @70975372 | ||
| + | int1 82 02 01 00 82 19 FC FF @75496828 | ||
| + | int1 82 02 01 39 37 00 F9 7F @77751452 | ||
| + | int1 82 02 01 00 82 34 FC 7F @82282236 | ||
| + | int1 82 02 01 39 37 20 E5 7F @86783724 | ||
| + | int1 82 02 01 00 82 55 0C FF @91750972 | ||
| + | int1 82 02 01 39 37 40 0E 7F @95820796 | ||
| + | int1 82 02 01 00 82 74 F7 7F @100327068 | ||
| + | Pause: int3 82 @27147 int2 02 @7148619 (after 0 INT1) | ||
| + | The same at double speed, mode 84: | ||
| + | Setloc 177975 (39:35:00), Play: int3 02 @46567 | ||
| + | int1 82 02 01 39 36 40 0E FF @38338247 | ||
| + | int1 82 02 01 00 81 74 F0 FF @40588583 | ||
| + | int1 82 02 01 39 36 60 FF FF @42847319 | ||
| + | int1 82 02 01 00 82 19 FC FF @45103767 | ||
| + | int1 82 02 01 39 37 00 F9 7F @46240823 | ||
| + | int1 82 02 01 00 82 34 F6 7F @48491671 | ||
| + | int1 82 02 01 39 37 20 E5 7F @50751287 | ||
| + | int1 82 02 01 00 82 55 0C FF @53246599 | ||
| + | int1 82 02 01 39 37 40 F4 7F @55277223 | ||
| + | int1 82 02 01 00 82 74 F7 7F @57541271 | ||
| + | int1 82 02 01 39 37 60 FA 7F @59805351 | ||
| + | int1 82 02 01 00 83 19 F3 7F @62040967 | ||
| + | int1 82 02 01 39 38 00 FF FF @63176007 | ||
| + | int1 82 02 01 00 83 34 F8 FF @65434551 | ||
| + | int1 82 02 01 39 38 20 FE FF @67682215 | ||
| + | int1 82 02 01 00 83 55 FE FF @70178039 | ||
| + | int1 82 02 01 39 38 40 FF 7F @72204823 | ||
| + | int1 82 02 01 00 83 74 FF 7F @74469287 | ||
| + | int1 82 02 01 39 38 60 F5 7F @76732087 | ||
| + | int1 82 02 01 00 84 19 EA 7F @78974199 | ||
| + | int1 82 02 01 39 39 00 F3 FF @80102983 | ||
| + | int1 82 02 01 00 84 34 07 FF @82380551 | ||
| + | int1 82 02 01 39 39 20 0C FF @84617639 | ||
| + | int1 82 02 01 00 84 54 F5 FF @86877959 | ||
| + | int1 82 02 01 39 39 40 03 FF @89134391 | ||
| + | int1 82 02 01 00 84 74 FC FF @91391943 | ||
| + | int1 82 02 01 39 39 60 F6 FF @93667591 | ||
| + | int1 82 02 01 00 85 19 FA FF @95931911 | ||
| + | int1 82 02 01 39 40 00 F4 7F @97038263 | ||
| + | int1 82 02 01 00 85 34 FE 7F @99297111 | ||
| + | int1 82 02 01 39 40 20 FB 7F @101569767 | ||
| + | Pause: int3 82 @25167 int2 02 @3705743 (after 0 INT1) | ||
| + | Play from sector 1000 on the data track, every report for 2 s, mode 04: | ||
| + | Setloc 1000 (00:15:25), Play: int3 02 @34524 | ||
| + | int1 82 01 01 00 94 10 BF FF @60151100 | ||
| + | int1 82 01 01 00 16 20 62 FF @64665196 | ||
| + | Pause: int3 82 @24508 int2 02 @3711644 (after 0 INT1) | ||
| + | Play track 2 for 1 s, Pause, then GetQ in the lead-in, three times each point: | ||
| + | Pause: int5 43 ..(2) @26003 none (after 0 INT1) | ||
| + | 1Dh 01 01: int3 42 @28450 int2 41 00 01 99 55 60 00 00 02 00 FC @215976530 | ||
| + | 1Dh 01 01: int3 42 @26423 int2 41 00 01 99 55 61 00 00 02 00 9F @403431 | ||
| + | 1Dh 01 01: int3 42 @25900 int2 41 00 01 99 55 62 00 00 02 00 FC @415740 | ||
| + | 1Dh 01 02: int3 42 @26579 int2 01 00 02 99 55 63 00 39 34 51 9F @419155 | ||
| + | 1Dh 01 02: int3 42 @48835 int2 01 00 02 99 55 64 00 39 34 51 FC @404291 | ||
| + | 1Dh 01 02: int3 42 @29060 int2 01 00 02 99 55 65 00 39 34 51 9F @414419 | ||
| + | 1Dh 01 A0: int3 42 @40918 int2 41 00 A0 99 56 21 00 01 20 00 FC @13962757 | ||
| + | 1Dh 01 A0: int3 42 @44667 int2 41 00 A0 99 56 22 00 01 20 00 9F @411979 | ||
| + | 1Dh 01 A0: int3 42 @26468 int2 41 00 A0 99 56 23 00 01 20 00 FC @416292 | ||
| + | 1Dh 01 A1: int3 42 @34772 int2 41 00 A1 99 56 24 00 12 00 00 9F @425075 | ||
| + | 1Dh 01 A1: int3 42 @42116 int2 41 00 A1 99 56 25 00 12 00 00 FC @395987 | ||
| + | 1Dh 01 A1: int3 42 @24548 int2 41 00 A1 99 56 26 00 12 00 00 9F @414563 | ||
| + | ReadN of 8 sectors from sector 2000, Pause, then GetQ: | ||
| + | Pause: int3 22 @33224 int2 02 @3857784 (after 0 INT1) | ||
| + | 1Dh 01 01: int3 02 @40253 int2 41 00 01 99 59 30 00 00 02 00 9F @10169117 | ||
| + | 1Dh 01 01: int3 02 @31325 int2 41 00 01 99 59 31 00 00 02 00 FC @424173 | ||
| + | 1Dh 01 02: int3 02 @24022 int2 01 00 02 99 59 33 00 39 34 51 FC @870726 | ||
| + | 1Dh 01 02: int3 02 @24172 int2 01 00 02 99 59 34 00 39 34 51 9F @404700 | ||
| + | Mode 00 put back to 20: int3 02 @31277 | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | [followup34d/04HLD.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/04HLD.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 04 HLD F34 HELD FIRST INT1 | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | ReadN from sector 2000 in mode 20h, the first INT1 held 0, 4 to 8 by halves, and 12 sector times; its data, then GetlocL. | ||
| + | Switches (Test 21h, bit1 door open, bit0 head at POS0): int3 00 @23852. Getstat: int3 02 @190250. Mode 20. HINTMSK was 1F. | ||
| + | Sector 2000's header is 00:28:50; each row's first INT1 cycle is from the ReadN write. | ||
| + | hold 0.0: first int1/22 @6544156, read @6544474: 00:28:50 02, subheader 00 00 08 00; GetlocL int3 00 28 50 02 00 00 08 00 @45423 | ||
| + | Pause: int3 22 @28843 int2 02 @2399675 (after 0 INT1) | ||
| + | hold 4.0: first int1/22 @1965768, read @3772288: 00:28:50 02, subheader 00 00 08 00; GetlocL int3 00 28 54 02 00 00 08 00 @38958 | ||
| + | Pause: int3 22 @31520 int2 02 @3754000 (after 0 INT1) | ||
| + | hold 4.5: first int1/22 @3353019, read @5385323: 00:28:50 02, subheader 00 00 08 00; GetlocL int3 00 28 54 02 00 00 08 00 @48315 | ||
| + | Pause: int3 22 @37372 int2 02 @3953724 (after 0 INT1) | ||
| + | hold 5.0: first int1/22 @11971367, read @14229452: 00:28:50 02, subheader 00 00 08 00; GetlocL int3 00 28 55 02 00 00 08 00 @46887 (after 1 INT1) | ||
| + | Pause: int3 22 @30364 int2 02 @3740940 (after 0 INT1) | ||
| + | hold 5.5: first int1/22 @11951308, read @14435200: 00:28:50 02, subheader 00 00 08 00; GetlocL int3 00 28 55 02 00 00 08 00 @37127 | ||
| + | Pause: int3 22 @35502 int2 02 @3977886 (after 0 INT1) | ||
| + | hold 6.0: first int1/22 @20579436, read @23289109: 00:28:58 02, subheader 00 00 08 00; GetlocL int3 00 28 56 02 00 00 08 00 @39012 | ||
| + | Pause: int3 22 @35507 int2 02 @3740563 (after 0 INT1) | ||
| + | hold 6.5: first int1/22 @3604168, read @6539620: 00:28:58 02, subheader 00 00 08 00; GetlocL int3 00 28 56 02 00 00 08 00 @45313 | ||
| + | Pause: int3 22 @27209 int2 02 @3977609 (after 0 INT1) | ||
| + | hold 7.0: first int1/22 @11075787, read @14237056: 00:28:58 02, subheader 00 00 08 00; GetlocL int3 00 28 57 02 00 00 08 00 @42935 | ||
| + | Pause: int3 22 @102979 int2 02 @4178899 (after 0 INT1) | ||
| + | hold 7.5: first int1/22 @6083883, read @9470947: 00:28:58 02, subheader 00 00 08 00; GetlocL int3 00 28 57 02 00 00 08 00 @32910 | ||
| + | Pause: int3 22 @37376 int2 02 @3973888 (after 0 INT1) | ||
| + | hold 8.0: first int1/22 @10602152, read @14214992: 00:28:58 02, subheader 00 00 08 00; GetlocL int3 00 28 58 02 00 00 08 00 @45959 | ||
| + | Pause: int3 22 @50476 int2 02 @3732492 (after 0 INT1) | ||
| + | hold 12.0: first int1/22 @6084184, read @11503358: 00:28:58 02, subheader 00 00 08 00; GetlocL int3 00 28 62 02 00 00 08 00 @36363 | ||
| + | Pause: int3 22 @31568 int2 02 @3751168 (after 0 INT1) | ||
| + | Mode 00 put back to 20: int3 02 @69130 | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | [followup34d/05GQP.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/05GQP.txt) | ||
| + | |||
| + | ``` | ||
| + | ===== 05 GQP F34 GETQ PAST END | BIOS 19951204 System ROM Version 3.0 11/18/96 A | ||
| + | BadVaddr as the group starts: 00000480 | ||
| + | Test 04h, 2 s, Test 05h, then GetQ 01 with a point after the last track, every interrupt for 15 s, then Pause; four times. | ||
| + | Switches (Test 21h, bit1 door open, bit0 head at POS0): int3 00 @165554. Getstat: int3 02 @29780. Mode 20. HINTMSK was 1F. | ||
| + | Copy 1. 04h: int3 02 @34469 05h: int3 00 00 @28070 gs1/22 | ||
| + | 1Dh 01 13, 0 cycles after that Getstat: | ||
| + | int3 22 @39489 | ||
| + | int1 22 @1038417 | ||
| + | int5 06 04 @287554769 | ||
| + | int5 04 40 @357002849 | ||
| + | int1 26 @421040193 | ||
| + | int1 26 @421476193 | ||
| + | int1 26 @421930161 | ||
| + | int1 26 @422381713 | ||
| + | int1 26 @422839841 | ||
| + | int1 26 @423279473 | ||
| + | int1 26 @423730161 | ||
| + | int1 26 @424191249 | ||
| + | and 185 more | ||
| + | Pause: int3 22 @42903 int2 02 @2923703 gs3/02 | ||
| + | Copy 2. 04h: int3 02 @33993 05h: int3 00 00 @39064 gs1/22 | ||
| + | 1Dh 01 13, 112896 cycles after that Getstat: | ||
| + | int3 22 @31265 | ||
| + | int1 22 @157425 | ||
| + | int1 22 @1279441 | ||
| + | int5 26 40 @359041681 | ||
| + | int1 26 @369442145 | ||
| + | int1 26 @369885137 | ||
| + | int1 26 @370337409 | ||
| + | int1 26 @370787313 | ||
| + | int1 26 @371237281 | ||
| + | int1 26 @371704241 | ||
| + | int1 26 @372141585 | ||
| + | int1 26 @372599713 | ||
| + | and 299 more | ||
| + | Pause: int3 22 @81393 int2 02 @3843393 gs3/02 | ||
| + | Copy 3. 04h: int3 02 @46421 05h: int1 22 @17844 gs3/22 | ||
| + | 1Dh 01 13, 225792 cycles after that Getstat: | ||
| + | int3 22 @25128 | ||
| + | int1 22 @193879 | ||
| + | int1 22 @650311 | ||
| + | int1 22 @1103607 | ||
| + | int1 22 @1556151 | ||
| + | int1 22 @2007767 | ||
| + | int1 22 @2456759 | ||
| + | int1 22 @2909239 | ||
| + | int1 22 @3360871 | ||
| + | int1 22 @3824967 | ||
| + | int1 22 @4264263 | ||
| + | int1 22 @4712887 | ||
| + | and 1114 more | ||
| + | Pause: int3 22 @46409 int2 02 @4027673 gs3/02 | ||
| + | Copy 4. 04h: int3 02 @41920 05h: int3 00 00 @23508 gs1/22 | ||
| + | 1Dh 01 13, 338688 cycles after that Getstat: | ||
| + | int3 22 @121256 | ||
| + | int1 22 @136616 | ||
| + | int1 22 @959400 | ||
| + | int5 26 40 @359633048 | ||
| + | int1 26 @373376792 | ||
| + | int1 26 @373817704 | ||
| + | int1 26 @374263576 | ||
| + | int1 26 @374726184 | ||
| + | int1 26 @375169464 | ||
| + | int1 26 @375627144 | ||
| + | int1 26 @376071928 | ||
| + | int1 26 @376524632 | ||
| + | and 291 more | ||
| + | Pause: int3 22 @30189 int2 02 @3713053 gs3/02 | ||
| + | Mode 25 put back to 20: int3 02 @31465 | ||
| + | Done. | ||
| + | ``` | ||
| + | |||
| + | ## References | ||
| + | |||
| + | [^run]: SCPH-5501 output: [followup34/00RUN.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/00RUN.txt) | ||
| + | [^gkf]: SCPH-5501 output: [followup34/01GKF.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/01GKF.txt) | ||
| + | [^rtl]: SCPH-5501 output: [followup34/02RTL.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/02RTL.txt) | ||
| + | [^tsr]: SCPH-5501 output: [followup34/03TSR.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34/03TSR.txt) | ||
| + | [^din]: SCPH-5501 output: [followup34d/01DIN.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/01DIN.txt) | ||
| + | [^ttd]: SCPH-5501 output: [followup34d/02TTD.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/02TTD.txt) | ||
| + | [^pkl]: SCPH-5501 output: [followup34d/03PKL.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/03PKL.txt) | ||
| + | [^hld]: SCPH-5501 output: [followup34d/04HLD.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/04HLD.txt) | ||
| + | [^gqp]: SCPH-5501 output: [followup34d/05GQP.txt](/tests/raw/20261005T0000Z-5501a-card-q/followup34d/05GQP.txt) | ||