public void Push <T1>(T1 value) where T1 : struct { uint size = processor.Context.Memory.Write(register.Value.ToUInt32(null), value); register.Add(size); if (register.Value.ToUInt32(null) > stackMemoryStart + stackSize * 4) { processor.Interrupt(2); throw new Exception("Stack overflow!"); } }