#include #include #include #include #include "encoding.h" #include "platform.h" #include int factorial(int i) { volatile int result = 1; for (int ii = 1; ii <= i; ii++) { result = result * ii; } return result; } void write_tohost(char* string) { volatile uint64_t payload[4] = {64, 0, (uintptr_t)string, (strlen(string) + 1)}; tohost = (uintptr_t)payload; } int main() { char string[] = "hello world with write in hello"; write_tohost(string); write(STDOUT_FILENO, string, sizeof(string)); int result = factorial(10); printf("Factorial is %d", result); return 0; }