X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fkernel%2Fao_pyro.h;h=f17abed377907fa0fa4eb5a5c34c7f30c5c1bc21;hb=4ff9f3271f9d20603626c18ee16b20e50c579ddf;hp=0fde725a617ce42b2df60797b246535aec8a4e62;hpb=e935ebe55705cb0506aac0859583d54fd8e5ca46;p=fw%2Faltos diff --git a/src/kernel/ao_pyro.h b/src/kernel/ao_pyro.h index 0fde725a..f17abed3 100644 --- a/src/kernel/ao_pyro.h +++ b/src/kernel/ao_pyro.h @@ -3,7 +3,8 @@ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of @@ -51,7 +52,7 @@ enum ao_pyro_flag { #endif ; -struct ao_pyro { +struct ao_pyro_1_24 { enum ao_pyro_flag flags; int16_t accel_less, accel_greater; int16_t speed_less, speed_greater; @@ -62,10 +63,25 @@ struct ao_pyro { uint8_t state_less, state_greater_or_equal; int16_t motor; uint16_t delay_done; - uint8_t fired; + uint8_t _unused; /* was 'fired' */ +}; + +struct ao_pyro { + enum ao_pyro_flag flags; + int16_t accel_less, accel_greater; + int16_t speed_less, speed_greater; + int16_t height_less, height_greater; + int16_t orient_less, orient_greater; + int32_t time_less, time_greater; + int32_t delay; + uint8_t state_less, state_greater_or_equal; + int16_t motor; + uint32_t _unused1; /* was 'delay_done' */ + uint8_t _unused2; /* was 'fired' */ }; #define AO_PYRO_8_BIT_VALUE (ao_pyro_state_less|ao_pyro_state_greater_or_equal) +#define AO_PYRO_32_BIT_VALUE (ao_pyro_time_less|ao_pyro_time_greater|ao_pyro_delay) extern uint8_t ao_pyro_wakeup; @@ -80,6 +96,9 @@ ao_pyro_show(void); void ao_pyro_init(void); +void +ao_pyro_update_version(void); + void ao_pyro_manual(uint8_t p);