void DebugManagerV3::runEvent(MessageDataPtr messageData)
{
	if (EmulationManagerPtr emManager = this->parent->getEmulationManager())
	{
		emManager->onEvent(messageData);
	}

	messageData->reset();

	uint16_t eventMask = 0;
	(*messageData) >> eventMask;

	if (eventMask & JSTATE_CAPTURE_FLAG)
	{
		uint32_t maskLow = 0;
		uint32_t maskHigh = 0;
		(*messageData) >> maskLow >> maskHigh;

		if (maskHigh & J_STATE_LPMX_MASK_HIGH)
		{
			deviceInLpm5 = true;
			if(cbx)
			{
				cbx->event(DebugEventTarget::Lpm5Sleep);
			}
		}
		else
		{
			deviceInLpm5 = false;
			if(cbx)
			{
				cbx->event(DebugEventTarget::Lpm5Wakeup);
			}
		}
	}
void StateStorage430::onEventVWatch(MessageDataPtr msgData)
{
	msgData->reset();

	uint16_t eventMask = 0;

	(*msgData) >> eventMask;
	
	if (eventMask & 0x8)
	{
		do
		{
			uint32_t variableAddress = 0;
			uint16_t variableValue = 0;

			(*msgData) >> variableAddress >> variableValue;

			if (!msgData->fail())
			{
				updateWatchedVariable(variableAddress, variableValue);
			}
		} while (!msgData->fail());
	}
}