Finally fixed partial blitting.
X and Y coordinates seem a bit swapped still, but I have no solution yet. This at least works.