В итоге решил свою задачу следующим образом, т.к. булево не хочет адекватно работать. На PSB300 соответственно висит индикатор, читаю значение регистра МУ110 в переменную с типом dword (с BOOL повторюсь не вышло - всегда в TRUE не зависимо от состояния регистра), ну а дальше согласно условий...

DWORD Value=0;

if (PSW[400]==0)
{


Read(DOWNLOAD, 32, MODBUS_RTU_REG_4X, 0, 0, TYPE_WORD, &Value);

if (Value!=0)
{
SetPSB(300);
}
else
{
ResetPSB(300);
}

PSW[400]=1;
}