I want to keep them for backward compatibility. It's not contradictory at all.
Logically then, I must infer that you want to keep compatibility even though it is "preserving the previous generations bad ideas". This was not clear to me in what you wrote.
Of course they weren't necessarily bad ideas at the time, but some things make less sense now than they did but that doesn't mean they shouldn't be supported. Otherwise we might as well just switch to x64. I personally wouldn't even think about extending the ISA until a compatible CPU+MMU+FPU was implemented & then I'd work on adding switchable 64 bit mode to the CPU+MMU.
Supported can mean trapping every FPU or MMU instruction though. The Apollo Team discussed trapping all FPU and MMU instructions for the 68k. I didn't like it, especially for the minimal 68060 FPU which has a nice ISA considering its age. The MMU is more of a problem as adding modern enhancements while maintaining high compatibility is more difficult. There is not much Amiga software using the MMU though.
I don't know enough about PPC, but from an outsider the entire CPU seems like a bad idea.
I don't see anything inherently bad about PPC other than it is currently out of favor and losing market share. Sure, instruction acronyms and aliases are out of control, the ISA is so broad that hardware implementations are incomplete, assumptions about what the compiler could do and assembler programmers would not have to do were incorrect and the ISA is overall less friendly and the code not as compact compared to the 68k but the new ARMv8 (AArch64) is very similar and makes some of the same mistakes.
They are. Precision on x87 is variable per process on Windows and Direct3D changes it under you (I have no idea what precision Linux selects). The same software compiled for x64 will behave differently because the accuracy is different again (floating point appears to use SSE and not x87 on x64).
The x87 FPU was a poor design that was more difficult than the 68k FPU to modernize. Newer x86 software has been using the SIMD for floating point since 1997, except for a few programs needing higher precision, trig instructions or logarithm instructions. Yes, the precision of each floating point data type can vary by compiler (with options) even on the same computer. It is up to the programmer cross compiling or porting software to be aware of these kinds of problems which are not uncommon. Integer formats vary by data type (according to the ABI) as well.
It makes noticeable differences in some software, stuff like collision detection in multiplayer games becomes horrendously complicated. You have to have a huge QA team to find all the problems. If you can avoid that then it's much easier. Sometimes you can't avoid floating point because of performance, but in the code I worked I never found switching to float with 68882 to be faster than integer (x86 performs differently though).
Some uses of floating point are bad and some programmers are amateurs. This doesn't mean everyone should stop using floating point and hardware floating point should be removed.
The 6888x FPUs were very slow, as most external FPUs were, because of the slow communications between the CPU and FPU. It made sense to do complex instructions on the FPU which reduced the communications overhead. As the processors became faster and integrated FPUs reduced the overhead, simple FPU instructions made more sense. This is why the 68040 and 68060 trapped many complex instructions while keeping many of the common ones. This was a good idea, IMO, although I would have kept a few more simple but useful FPU instructions (they did keep the most common core instructions in hardware). The x87 FPU kept all their instructions as it became integrated but they had this crazy stack based (no FPU registers like the 68k or PPC "standard" FPU) instruction argument scheme which was not easy for compilers or good for superscalar execution so they deprecated the whole FPU and added more floating point support to the SIMD. The x87 FPU also had more inconsistencies and bugs than the better designed and more IEEE compliant 68k FPU which may have added extra incentive to deprecate it.
Running integer code on one core and having it switch to another to emulate the FPU would be horrendously slow. If it is just a couple of commands that throw exceptions then it probably isn't a big deal, but it would surely be done on the same core. The fpu in the e500v2 (P10xx series, P2010 and P2020) appears to be completely incompatible to the classic PowerPC, but the e500mc (P204x, P30xx and P40xx) is supposed to be compatible to the classic PowerPC fpu. It would have seemed more logical to use a P204x instead of a P102x. The announcement is a little strange as it said 1.2ghz (which is the speed of the P202x) and not 800mhz (which is the P102X).
I only saw disadvantages to having the 2nd core handle the 1st core's trap but then I don't have much multi-core programming experience (maybe Jens doesn't either). I at least looked at some P1022 CPU documentation that seemed to suggest that all "standard" PPC FPU instructions (and registers) have disappeared and would need to be trapped. The documentation I found was not very good but no one has claimed I was wrong yet.