mirror of
https://github.com/TomHarte/CLK.git
synced 2024-11-26 23:52:26 +00:00
There's no TODO here; overflow is always 0 for a 16x16 multiply.
... and the original 68000 doesn't support 32x32 multiplies.
This commit is contained in:
parent
ca12ba297b
commit
c7a5b054db
@ -940,7 +940,7 @@ template <class T, bool dtack_is_implicit, bool signal_will_perform> void Proces
|
||||
|
||||
case Operation::MULU: {
|
||||
destination()->full = destination()->halves.low.full * source()->halves.low.full;
|
||||
carry_flag_ = overflow_flag_ = 0; // TODO: "set if overflow".
|
||||
carry_flag_ = overflow_flag_ = 0;
|
||||
zero_result_ = destination()->full;
|
||||
negative_flag_ = zero_result_ & 0x80000000;
|
||||
|
||||
@ -954,7 +954,7 @@ template <class T, bool dtack_is_implicit, bool signal_will_perform> void Proces
|
||||
case Operation::MULS: {
|
||||
destination()->full =
|
||||
u_extend16(destination()->halves.low.full) * u_extend16(source()->halves.low.full);
|
||||
carry_flag_ = overflow_flag_ = 0; // TODO: "set if overflow".
|
||||
carry_flag_ = overflow_flag_ = 0;
|
||||
zero_result_ = destination()->full;
|
||||
negative_flag_ = zero_result_ & 0x80000000;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user