See openbsd.org/vax-simh.html on how to play with this. (The suggested 4.3 worked for me, and 4.4 didn't install.)
- - - #include <sys/types.h> #include <sys/mman.h> char blob[] = { 0x04,0x00,0xeb,0x28,0x00,0x5e,0x50, 0xdd,0x0a,0x9f,0xaf,0x16,0xdd,0x01,0xfb,0x03,0xaf, 0x06,0xdd,0x00,0xfb,0x01,0xaf,0x05,0x00,0x00,0xbc, 0x04,0x04,0x00,0x00,0xbc,0x01,0x04, 'h','e','l','l','o',' ','v','a','x','\n', 0xeb,0x14,0x58,0x6a,0x0b,0x50,0x6a,0x01,0x6a,0x00, 0x58,0x50,0xb0,0x04,0xcd,0x80,0x58,0x50,0x50,0x40, 0xcd,0x80,0xe8,0xe7,0xff,0xff,0xff, 'h','e','l','l','o',' ','i','3','8','6','\n' }; int main(void) { mprotect(blob, sizeof(blob), PROT_READ|PROT_EXEC); ((void (*)(void))blob)(); return 1; }