Thanks, that does sound reasonable, though with over 2000 lines of code it could be a job to find the culprit.
Have played around with the code leaving out libraries in turn etc. but nothing changes.
Perhaps going into the library code and try adding a little delay to each of the D/C instrucions might work, though that might defeat the point of its high speed ?!
For this existing project will revert to its original Software SPI, but for future projects will try the Hardware SPI but check on the display functioning at each stage to ensure its ok.
Apart from the TFT screen have not used the Arduino/ESP32 SPI for any other devices, so wonder if other SPI devices suffer from similar problems with the fast Hardware SPI ?