1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-07-05 10:28:58 +00:00

I think the 68000 actually loads a byte value onto both the upper and lower data lines.

This commit is contained in:
Thomas Harte 2019-12-21 20:37:03 -05:00
parent 6f4444d834
commit 08f2877382

View File

@ -224,8 +224,7 @@ struct Microcycle {
*/ */
forceinline uint16_t value16() const { forceinline uint16_t value16() const {
if(operation & SelectWord) return value->full; if(operation & SelectWord) return value->full;
const auto shift = byte_shift(); return uint16_t((value->halves.low << 8) | value->halves.low);
return uint16_t((value->halves.low << shift) | (0xff00 >> shift));
} }
/*! /*!
@ -237,7 +236,7 @@ struct Microcycle {
return uint8_t(value->full >> 8); return uint8_t(value->full >> 8);
} }
return uint8_t(value->halves.low | (0xff00 >> ((*address & 1) << 3))); return value->halves.low;
} }
/*! /*!
@ -249,7 +248,7 @@ struct Microcycle {
return uint8_t(value->full); return uint8_t(value->full);
} }
return uint8_t(value->halves.low | (0x00ff << ((*address & 1) << 3))); return value->halves.low;
} }
/*! /*!