   embedvm_exec(&no::vm); //execute next instruction
 }
 
-
+//callback used by EmbedVM to read memory
 static int16_t memoryRead(uint16_t address, bool is16bit, void *ctx UNUSED)
 {
   if (is16bit)

    memory[address] = value;
}

static int16_t callUserFunction(uint8_t function, uint8_t argc, int16_t *argv, void *ctx UNUSED)
{
  int16_t ret = 0;
  int i;

  if (function == 0) {
    stop = true;
    Serial.println("Called user function 0 => stop.");

#define BAUDRATE 9600 //UART baudrate
#define VERBOSE false //verbose mode

boolean stop = false; //whether the VM should skip execution of program
byte memory[MEMORY_SIZE]; //VM memory

//put in seperate namespace to prevent Arduino IDE from preprocessing it; Arduino preprocessor is ST00PID
namespace no {
