X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fkernel%2Fao_pyro.c;fp=src%2Fkernel%2Fao_pyro.c;h=80e1980ebf28b8204b10be3d2f5090017f2db43b;hp=30d1518f051701146b8e96a95a74d7715a685ee5;hb=f3c8946d992889edabffbab40aead578963de75f;hpb=38db8202a4d6ab90305768410f1a37106cc95794 diff --git a/src/kernel/ao_pyro.c b/src/kernel/ao_pyro.c index 30d1518f..80e1980e 100644 --- a/src/kernel/ao_pyro.c +++ b/src/kernel/ao_pyro.c @@ -69,6 +69,7 @@ ao_pyro_print_status(void) #endif uint16_t ao_pyro_fired; +uint16_t ao_pyro_inhibited; #ifndef PYRO_DBG #define PYRO_DBG 0 @@ -274,9 +275,9 @@ ao_pyro_check(void) for (p = 0; p < AO_PYRO_NUM; p++) { pyro = &ao_config.pyro[p]; - /* Ignore igniters which have already fired + /* Ignore igniters which have already fired or inhibited */ - if (ao_pyro_fired & (1 << p)) + if ((ao_pyro_fired|ao_pyro_inhibited) & (1 << p)) continue; /* Ignore disabled igniters @@ -308,10 +309,10 @@ ao_pyro_check(void) /* Check to make sure the required conditions * remain valid. If not, inhibit the channel - * by setting the fired bit + * by setting the inhibited bit */ if (!ao_pyro_ready(pyro)) { - ao_pyro_fired |= (1 << p); + ao_pyro_inhibited |= (1 << p); continue; }