public void WriteVar(int location, int value)
{
if (location < 0x10)
{
Registers[location] = value;
}
else if (location < 0x46)
{
LocalVarSet(location, value); //invoke any special behaviours, like track switch for setting patch
LocalVar[location - 0x10] = value;
}
else if (location < 0x64)
{
return; //not mapped
}
else if (location < 0x88)
{
VM.WriteGlobal(location - 0x64, value);
}
else if (location < 0x271a)
{
return; //not mapped
}
else if (location < 0x2737)
{
ObjectVar[location - 0x271a] = value; //this probably should not be valid... but if it is used it may require some reworking to get this to sync across object threads.
}
}