LDPIRX doesn't work at 3.5Mhz or 7Mhz
The issue was originally reproduced on a KS2 Next (Firmware v1.44 Core v3.02.00) but is reported (on the Spectrum Next discord (z80-beginners)) to affect 3.2.0 Artix, 3.2.1 Artix, 3.2.0 Spartan and 3.1.10 Spartan as well.
The reproducer is quite simple. In Specasm syntax it looks like
.Main
ld hl, pattern
ld de, dest
ld bc, 16
ld a, '4'
ldpirx
nbrk
ret
align 8
.pattern
db '1', '2', '3', '4'
db '5', '6', '7', '8'
.dest
ds 16, '.'
When running the code at 3.5Mhz and 7Mhz, the destination buffer is not altered. I'd expect it to contain '123.5678123.5678'. When running at 14 and 28Mhz the destination buffer is filled with the expected data.
The bug has also been reproduced using .asm and is not specific to Specasm.