Take out defines, asm functions and strctures into vm.h