===== 06 DMW DMA MIDWAY | BIOS 19951204 System ROM Version 3.0 11/18/96 A BadVaddr as the group starts: 00000480 CHCR, MADR, BCR and DICR polled while a transfer runs: a row each time one changes (t is timer 2's low 16 bits). DICR flags need bit 23 and bit 16+n (dmachannels.txt:184-186); bits 0-6 may give a flag per slice (dmachannels.txt:174-177). SPU write 16 words x 8, CHCR 01000201, DICR 00000000: poll t: CHCR MADR BCR DICR 0 551: 01000201 0002A428 00070010 00000000 3 1657: 01000201 0002A468 00060010 00000000 6 2728: 01000201 0002A4A8 00050010 00000000 10 4079: 01000201 0002A4E8 00040010 00000000 13 5141: 01000201 0002A528 00030010 00000000 16 6215: 01000201 0002A568 00020010 00000000 19 7289: 01000201 0002A568 00010010 00000000 20 7655: 01000201 0002A5A8 00010010 00000000 23 8715: 00000201 0002A5E8 00000010 00000000 done after 23 polls SPU write 16 words x 8, CHCR 11000201 (bit 28): poll t: CHCR MADR BCR DICR 0 515: 01000201 0002A428 00070010 00000000 4 1899: 01000201 0002A468 00060010 00000000 7 2968: 01000201 0002A4A8 00050010 00000000 10 4038: 01000201 0002A4E8 00040010 00000000 13 5105: 01000201 0002A528 00030010 00000000 17 6469: 01000201 0002A568 00020010 00000000 20 7528: 01000201 0002A5A8 00010010 00000000 24 8877: 00000201 0002A5E8 00000010 00000000 done after 24 polls SPU write 16 words x 8, DICR 00900000 (bit 23, bit 20): poll t: CHCR MADR BCR DICR 0 519: 01000201 0002A428 00070010 00900000 4 1907: 01000201 0002A468 00060010 00900000 7 2974: 01000201 0002A4A8 00050010 00900000 10 4045: 01000201 0002A4E8 00040010 00900000 13 5116: 01000201 0002A528 00030010 00900000 17 6467: 01000201 0002A568 00020010 00900000 20 7529: 01000201 0002A5A8 00010010 00900000 23 8604: 01000201 0002A5E8 00000010 90900000 24 8976: 00000201 0002A5E8 00000010 90900000 done after 24 polls I_STAT bit 3 after: 1 SPU write 16 words x 8, DICR 00900010 (bit 4 too, a flag per slice?): poll t: CHCR MADR BCR DICR 0 518: 01000201 0002A428 00070010 90900010 4 1912: 01000201 0002A468 00060010 90900010 7 2984: 01000201 0002A4A8 00050010 90900010 10 4054: 01000201 0002A4E8 00040010 90900010 13 5116: 01000201 0002A528 00030010 90900010 17 6470: 01000201 0002A568 00020010 90900010 20 7544: 01000201 0002A5A8 00010010 90900010 24 8893: 00000201 0002A5E8 00000010 90900010 done after 24 polls I_STAT bit 3 after: 1 SPU write 16 words x 8, DICR 00900010, I_STAT bit 3 in the last column: poll t: CHCR MADR BCR I_STAT&8 0 520: 01000201 0002A428 00070010 00000008 4 1910: 01000201 0002A468 00060010 00000008 7 2977: 01000201 0002A4A8 00050010 00000008 10 4048: 01000201 0002A4E8 00040010 00000008 13 5119: 01000201 0002A528 00030010 00000008 17 6470: 01000201 0002A568 00020010 00000008 20 7532: 01000201 0002A5A8 00010010 00000008 23 8606: 01000201 0002A5E8 00000010 00000008 24 8982: 00000201 0002A5E8 00000010 00000008 done after 24 polls SPU read 16 words x 8, CHCR 01000200: poll t: CHCR MADR BCR DICR 0 521: 01000200 0002A428 00070010 00000000 4 1900: 01000200 0002A468 00060010 00000000 7 2964: 01000200 0002A4A8 00050010 00000000 10 4043: 01000200 0002A4E8 00040010 00000000 13 5106: 01000200 0002A4E8 00030010 00000000 14 5474: 01000200 0002A528 00030010 00000000 17 6544: 01000200 0002A568 00020010 00000000 20 7600: 01000200 0002A5A8 00010010 00000000 23 8669: 00000200 0002A5E8 00000010 00000000 done after 23 polls GPU write 16 words x 8 to VRAM, CHCR 01000201: poll t: CHCR MADR BCR DICR 0 548: 01000201 0006B5E8 00000010 00000000 1 943: 00000201 0006B5E8 00000010 00000000 done after 1 polls GPU list 8 nodes of 15 NOPs, DICR 00840004 (bit 2, a flag per entry?): list at 026248, nodes 64 bytes apart poll t: CHCR MADR BCR DICR 0 575: 01000401 00FFFFFF 00000000 84840004 1 969: 00000401 00FFFFFF 00000000 84840004 done after 1 polls Done.