Are here any documents how to start?
For example, Pharo github repo doesn't have any C code at all, and to build it I need Pharo VM already running. It is Ok for building new version for existing platform, but what should I do if I want to build VM for other platform (OS)? Hardware platform is supported already, so, I think, I don't need to have new assembler / JIT / Whatever, but I need new glue to new libc, kernel, etc., and new executable file format, am I right?
Then when you're happy with your revised VM, you can spit out portable C code, compile it, and BAM you've got a production VM! Most plug-ins and primitives are also written in the Smalltalk subset (called SLANG), so they will likely be similarly portable.
There is also an FFI for interfacing beyond the standard model.