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()); } }