Sorry, spoke too soon suddenly had a brainwave!
I'm leaving the above as others who have this problem may find it helpful to see the evolution.
I have replaced the display loop with the below, plenty fast enough (too quick with just one vwait!), but if there's a more optimal way still I am all ears!
Code:
Repeat
VWait 2
n = QWrap(n,0,32)
x = n
For y=0 To 31
x = x+1
x = QWrap(x,0,32)
DisplayRGB 0,0,y LSL 3,pal(x)\r,pal(x)\g,pal(x)\b
Next
n+1
Until Joyb(0)