void ox_create(machine* m)
When the user creates a new machine instance of your type, the host will call this function with the address of the new machine struct.
Your job during ox_create() is as follows is to set up the machine instance and get it ready to run.
If you're not using state objects, you can skip most of those steps.
Here's an example:
my_state *s;
...
do_something_with(s);
m->state = (void*)s;