Nonsense that I think 68000 is compatible with 68020 and you don't. If you can establish that 0x86 is less incompatible, perhaps I can take you seriously.
I'm confused by this whole argument. The differences between the various 680X0 revisions are well-known and well documented. The differences between the various 80X86 revisions are well-known and well documented as well. So, any code that relies on a feature of an earlier version of a CPU that doesn't exist or has changed in a future version of a CPU will be incompatible without some sort of workaround, e.g. 68040.library.
I don't see the lack of VM86 when an Intel or AMD processor is running in 64-bit mode as a limitation. One could suppose, however, that if Intel had designed the x64 model, it might have included it. Intel chose to focus on the Itanium, though, and the market adopted an arguably incomplete model produced by AMD.
As an architect/engineer/administrator/monkey of Windows systems, the last thing I want to support is software running in NTVDM, whether it's DOS or Windows based. If you're not gaming, NTVDM is wonderful; however, I've always disliked not being able to arbitrarily choose the target VM of a Windows application. It's either shared or isolated. It would have been nice to include support for multiple shared VMs that didn't require working around limitations in the GUI.
There. That was a Microsoft criticism. I have lots of them, but I still like Windows, and in general, Microsoft does a great job of making sure my business runs smoothly. Don't start with the virus stuff. Please. Humans work for Microsoft, and humans are fallible. That's never going to change. Somewhere underneath all the logos and litigation, there's a software engineer just like you and me, working under extreme amounts of pressure, just doing his best to feed his family and produce a product of which he can be proud, in so far as the project and the market will let him.