Good to hear that you are out of bed (and made the code work for you).
BTW, I truncated the 32-nd bit of the result instead of rounded it. If you replace the line clr.w R11; with mov.w #0x4000,R11; the result will be 1/2 bit more accurate.
What exactly do you want for division? I'd like to try that for fun. (I am an hobbyist.)
-- OCY