странный макрос, много проверок, а по сути всё что "не ноль" пропускает на сквозь, а когда ноль на входе на выход даёт последнее не нулевое значение.
если всё именно так, то вот мой такой же макрос.
Вид для печати
хотел так же сделать ,но потом стукнуло в голову ,что сетевые переменные не сохраняются ,потому и поставил анализ изменения значения .Но теперь еще подумал и решил ,что ОЗУ вообше лишнее .Потому как если это константа то она хранится в памяти ПР ,если это переменная ,то она тоже хранится ,в том числе и сетевые (в своих регистрах) ,а тогда зачем это весь огород -проста ставим мультиплексор и все.
Или просто его убрать:D ;)
:) ..............:)