We were not setting all the status flags after the mov operation.
The set_flags method was only setting the C flag because the shift function returns a ArithmeticOpResult with only result and carry.
Now we explicitly set the status flags.
This error is due to bad design of the flags passing mechanism we have in place now and we should
review it to make it better.
We were not setting all the status flags after the mov operation.
The
set_flags
method was only setting theC
flag because theshift
function returns aArithmeticOpResult
with onlyresult
andcarry
. Now we explicitly set the status flags.This error is due to bad design of the flags passing mechanism we have in place now and we should review it to make it better.