If I do the roughly equivalent in a Domore simulator, I get your "desired" result if i use 16 bit signed integers for the math. If I use reals for the sources or include a 1.0* in the equation, I get your "incorrect" integer result.
I suspect this means Emulate is doing floating point math even when only integers are used.
