void TBSharedData::read() { // block here _armPort.Read(); _arm = _armPort.Content()._current_position; _armFrame++; if (_headPort.Read(0)) { _head = _headPort.Content(); _headFrame++; } if (_targetTrackingPort.Read(0)) { _target = _targetTrackingPort.Content(); _targetFrame++; } if (_vergencePort.Read(0)) { _vergence = _vergencePort.Content(); _vergenceFrame++; } _printStatus(); }
static void _next(struct CLIDebugger* debugger, struct CLIDebugVector* dv) { UNUSED(dv); if (debugger->d.currentBreakpoint) { if (debugger->d.currentBreakpoint->isSw && debugger->d.setSoftwareBreakpoint) { debugger->d.setSoftwareBreakpoint(&debugger->d, debugger->d.currentBreakpoint->address, debugger->d.currentBreakpoint->sw.mode, &debugger->d.currentBreakpoint->sw.opcode); } debugger->d.currentBreakpoint = 0; } ARMRun(debugger->d.cpu); _printStatus(debugger, 0); }
static void _commandLine(struct Debugger* debugger) { struct CLIDebugger* cliDebugger = (struct CLIDebugger*) debugger; const char* line; _printStatus(cliDebugger, 0); int count = 0; HistEvent ev; while (debugger->state == DEBUGGER_PAUSED) { line = el_gets(cliDebugger->elstate, &count); if (!line) { return; } if (line[0] == '\n') { if (history(cliDebugger->histate, &ev, H_FIRST) >= 0) { _parse(cliDebugger, ev.str, strlen(ev.str) - 1); } } else { _parse(cliDebugger, line, count - 1); history(cliDebugger->histate, &ev, H_ENTER, line); } } }
static void _reset(struct CLIDebugger* debugger, struct CLIDebugVector* dv) { UNUSED(dv); ARMReset(debugger->d.cpu); _printStatus(debugger, 0); }
static void _reset(struct CLIDebugger* debugger, struct CLIDebugVector* dv) { UNUSED(dv); debugger->d.core->reset(debugger->d.core); _printStatus(debugger, 0); }