Debugging embedded systems