The code works correctly on DMD-Windows 0.145. I think the problem
is the extra alignment for reals on Linux (12 bytes) compared to
Windows (10 bytes). Just a guess, but I think that this line:
> sub EDX,10 ; // deg--
should be
> sub EDX,12 ; // deg--
on Linux.