#ifndef RZ_VM_H #define RZ_VM_H #include "commons.h" #include "opcodes.h" #include "mod.h" typedef struct { param_t stack[RZ_STACK_LIMIT]; size_t pc; size_t bp; size_t sp; } vm_t; void vm_init(vm_t* vm); void vm_free(vm_t* vm); size_t vm_stack_str(vm_t* vm, char* buffer, size_t size); void vm_exec_mod(vm_t* vm, mod_t* mod); void vm_exec_instr(vm_t* vm, Opcode op, param_t param); #endif