3 ms·
This is the closest I could find to what the 68000 opcode map looks like: http://goldencrystal.free.fr/M68kOpcodes-v2.3.pdf http://goldencrystal.free.fr/M68kOp
by userbinator 2y ago
This is the closest I could find to what the 68000 opcode map looks like:
http://goldencrystal.free.fr/M68kOpcodes-v2.3.pdf http://goldencrystal.free.fr/M68kOpcodes-v2.3.pdf
It's reminiscent of ARM, but the relevant part is that the CAS instruction's second word bits 5:0 look like a "modrm" (to use the x86 terminology) where the officially documented values select only Dn, but the undocumented variant would correspond to (d16,An). At least, that's my theory for why A1 gets modified.
- userbinator 2y agoUpdate: from the linked thread at https://68kmla.org/bb/index.php?threads/classic-ii-possible-rom-bug-weird-68030-instruction.49071/ https://68kmla.org/bb/index.php?threads/classic-ii-possible-... there is this quote that supports my theory: This seems to put something into A1 [...]If you clear bit 3 from the second word of the instruction this stops happening.
- dougg3 2y agoIt also appears that I may not have been the first one to discover that something odd was going on with that bit, causing it to use A0-A7 (with weird results) instead of D0-D7: https://eab.abime.net/showthread.php?t=119675 https://eab.abime.net/showthread.php?t=119675