Цитата(garlands @ Jun 1 2008, 04:52)

а можно подробнее, как-же все-таки использовать?
т.е. отладочный вывод валится потоком?
Я некоторое время назад разбирался, как оно реализовано.
Суть в том, что putchar подставляется в этом случае iar-ом из своей библиотеки.
Смысл этого putchar в том, что он выводимые символы пишет в регистр, и вызывает функцию вывода, в которой стоит брейкпоинт. Как только по этому брейкпоинту случается остановка, отладчик это видит и считывает текущее значение нужного регистра, отображает его в терминальном окне и дальше пускает программу.
Но, как следствие, получается не совсем честный риалтайм при такой отладке, поскольку при выводе каждого символа ядро тормозится на время, необходимое для действий из предыдущего абзаца.
Кроме того, постоянно под это дело занимается 1 брейкпоинт, а их всего 2.
В общем я по этой причине забил на эту функцию, дабы не получать труднообъяснимых глюков, которые могут быть вызваны терминальным выводом.