Да вы же маньяк ассемблерный. Олдскул. Потом то что вы напишете ни один в здравом уме не возьмется сопровождать. =)
Кроме того, куча флагов и т.д. запутывает программу и ее чрезвычайно сложно читать. Помимо логики работы подпрограммы в нее вносится и логика диспетчеризации, что еще больше все запутывает.
На easyelectronics прошло продолжение эпопеи про RTOS. Действительно прикольно получилось. Я попробовал под нее писать все легко, несмотря на то что асм. Больше не надо париться ни насчет флагов, ни на счет выполнения сложных конечных автоматов - все пихается в очередь, а очередь сама выполняет. Пока две апи функции - поставить в очередь и поставить в очередь по таймеру. Я тут уже вижу как можно легко добавить приоритеты, посредством закидки в очередь с разных сторон, либо по номерам задач раздавать. Конечно до той же AVRX там далеко, но так и оверхед в разы меньше, а значит можно вкрутить ее на Тини без проблем.
К сожалению, я не смог прибыть на конференцию в Москву, т.к. подхватил грипп. Тем не менее материал который я должен был представить (с некоторыми ограничениями) у меня имеется. Он безусловно требует доработки.