If CreateSprite(1, 640, 1020)
DrawText(0, 12, "ÛÛÛ ßÛß ÛÛÛ ÜÛÛ²²ÛÛÜ ÜÛÛÛ²ÛÛÜ ÛÛÛÛ²ÛÛÜ ÞÛ²²ÛÛÛ²ÛÝ ÛÛÛ ßÛß ÛÛÛ")
does your code wait on the threads finishing before updating the frame or does it just unlock them and let them runI don't really know how to determine that a frame has finished without waiting on the threads to finish.
Do you mean having the text fading towards being totally transparent at the top and bottom of the view area? If so, I'd be inclined to use an overlayed PNG image that is totally opaque at the top and bottom, the middle would be totally transparent and the transparency value would reduce as your neared the top/bottom. You could then just draw the PNG over the top of the view area. Not sure if this would work for you, but it's what I'd try first.