Цитата Сообщение от Brewer Посмотреть сообщение
Если будет время- посмотрите и покритикуйте первые шаги в ПР.Может подскажете как причесать программу?
"блокировка"
out==XOR(OR(a,b), b) -- конечно, работает, но AND(a, NOT(b)) гораздо проще понимать

А если посмотреть как у вас используется этот макрос, то видно, что на оба входа подаётся инвертированный сигнал.
Т.е. по сути, у вас там AND(NOT(авария), NOT(NOT(пуск))) == AND(пуск, NOT(авария))

Т.е. советую назвать входы у "блокировки" "пуск" и "авария" и убрать XOR/OR.

"кнопки 1"
or, or, xor. Зачем так? Почему не просто RS триггер? В чём фича обратной связи и xor?

Всё остальное, конечно, крайне тяжело читается.
RGRC, похоже, не вашего авторства. Без пол-литра там, конечно, разобраться невозможно.