@f4grx @drj It was then, but I have a vague feeling that the 68010 or 20 allowed odd addresses. At a performance cost.
Conversation
Notices
-
Tim Ward ⭐🇪🇺🔶 #FBPE (timwardcam@c.im)'s status on Thursday, 02-Nov-2023 00:01:03 UTC Tim Ward ⭐🇪🇺🔶 #FBPE -
F4GRX Sébastien (f4grx@chaos.social)'s status on Thursday, 02-Nov-2023 00:01:05 UTC F4GRX Sébastien @TimWardCam @drj I am not sure any 68k supports unaligned word acesses. that is probably an address error exception.
-
Tim Ward ⭐🇪🇺🔶 #FBPE (timwardcam@c.im)'s status on Thursday, 02-Nov-2023 00:01:06 UTC Tim Ward ⭐🇪🇺🔶 #FBPE @drj It's an awful long time ago that I wrote any 68000 assembler - this was during the development of the QL which actually used a 68008.
One booby trap I seem to recall was to do with moving more than one byte at a time via an A register used as a pointer and containing an odd number. Didn't work at all, but I have a vague feeling that this got "fixed" (at the cost of additional bus cycles) in later processors?
-
David Jones (drj@typo.social)'s status on Thursday, 02-Nov-2023 00:01:10 UTC David Jones Welcome to #MOVember, one asm MOV instruction each day.
The Motorola MC68000 has a BEAST of a MOV instruction.
Official assembler mnemonic: MOVE. Refreshingly clear!You could move to and from registers and/or memory. 8-, 16-, 32- data sizes. Post increment, predecrement. Including memory-to-memory moves (*Ferris Bueller soundtrack voice*: Oh Yeah).
`*d++ = *s++` is a single instruction in 68000.
Officially destination on the right: MOVE A7,D0 copies the A7 register to D0
Please 🔁
-