Fast TFT library doesn't seen to draw bitmaps properly

I'm using the PDQ_ILI9341 library on my adafruit 2.8" touch display because it is supposed to be several fold faster than the standard adafruit library, which it is, but the problem is it's not drawing bitmaps properly.

When I call the drawXBitmap function, it only draws about half a dozen vertical lines starting from the origin and then aborts the rest of the picture. Can't figure out why. It was drawing the whole thing before so I assume there's something about this new library that isn't liking my code. Can anyone shed some light on this? Code attached.

Bear in mind I had to add the colors purple and orange to the library because they didn't exist so you should probably comment that our or change colors to avoid compile errors.

PDQ_ILI9341_config.h (2.33 KB)

sketch_sep28a_faster.ino (64.5 KB)

I've tried everything I can think of and it just doesn't seem to have any effect. I even examined the guts of the header file to see how the function was being defined. Tried declaring my hex array variable to match and it did nothing.

I managed to fix the problem myself by wading through the bog of code in the header file until I found the drawXBitmap function. Needless to say it was broken. I may have un-optimized it by fixing it but I'll take slow over broken any day. I'm posting it here for others to benefit. Just overwrite the existing file of the same name and the drawXBitmap function will work again. Nothing else has been changed so all the speed benefits will still apply to the other functions.

PDQ_GFX.h (35.8 KB)