Whats the encoding for the move.l with that addressing mode? I can't see anything that matches that in the 68020 user manual.
move.l ([$12345678,a0],$12345678),([$12345678,a1],$12345678)
The hexadecimal encoding for above is:
23b0 0173 1234 5678 1234 5678 0173 1234 5678 1234 5678
We can see the flaw of the 68k here. Both of the full extension format words would be better at the start followed by their data like this:
23b0 xxxx xxxx 1234 5678 1234 5678 1234 5678 1234 5678
As is, we may have to examine up to 16 bytes to determine the instruction length. If we remove the outer displacement, the max instruction length would be:
23b0 xxxx 1234 5678 xxxx 1234 5678
We need to examine 10 bytes to find the instruction length now. The maximum instruction length would become 14 bytes which is fewer than the x86 15 byte maximum instruction length

.