"The heart of MorphOS is the Quark kernel. It's a small kernel, with multitasking, multthreading, multiproc, memory protection, virtual address space, resource tracking, etc. support. Quark knows nothing about 68k or AmigaOS. It only runs native ppc tasks/threads. One of the tasks running under Quark is the Amiga emulation box. This task basically contains an exec clone and a 68k emulator. The main difference between the exec clone and the actual exec, is that it handles ppc tasks instead of 68k ones. Those ppc tasks can switch between running native ppc code, or 68k code via the emulator. AmigaOS executables are started with the emulator, and ELF ones are run natively (but inside the emulation box). When a program does a library call, the mode is switched automatically according to the type of code the library contains. The calling program doesn't know about it, and doesn't need to. This allows replacing 68k libraries by ppc ones. All programs benefit automatically from such a replacement. A large part of the kickstart has been replaced by ppc code that way, and eventually it will completely be replaced. The programs and libraries on the http://www.morphos.de/fileslinks.php3 page contain native ppc code (*), that run inside the emulation box. Currently, only a few system tasks run outside the emulation box. The "two emulations" thing is a different story. MorphOS only contains one emulator (**) at a time. But Ralph originally wrote two different 68k emulators. The first one was a "simple" compact one. The second one was much bigger, but also faster. This is the one currently used. (*) except of course the cross-compiler that is intended to run on AmigaOS 68k and produce ppc-morphos code. (**) until the JIT is ready :-)" - Emmanuel Lesueur