X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fkernel%2Fao_data.c;h=f8d8e7f1b66a2b1b950c5ee1e496731de4c41f27;hb=291eddc6376dc414a32aab51d4ee7c4212e3e69d;hp=35d42b8f02fa10aff483622df37df828815f61fc;hpb=1085ec5d57e0ed5d132f2bbdac1a0b6a32c0ab4a;p=fw%2Faltos diff --git a/src/kernel/ao_data.c b/src/kernel/ao_data.c index 35d42b8f..f8d8e7f1 100644 --- a/src/kernel/ao_data.c +++ b/src/kernel/ao_data.c @@ -16,22 +16,31 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ +#ifndef AO_FLIGHT_TEST #include #include +#endif -volatile __xdata struct ao_data ao_data_ring[AO_DATA_RING]; -volatile __data uint8_t ao_data_head; -volatile __data uint8_t ao_data_present; +volatile struct ao_data ao_data_ring[AO_DATA_RING]; +volatile uint8_t ao_data_head; +volatile uint8_t ao_data_present; #ifndef ao_data_count void -ao_data_get(__xdata struct ao_data *packet) +ao_data_get(struct ao_data *packet) { -#if HAS_FLIGHT - uint8_t i = ao_data_ring_prev(ao_sample_data); -#else uint8_t i = ao_data_ring_prev(ao_data_head); -#endif memcpy(packet, (void *) &ao_data_ring[i], sizeof (struct ao_data)); } #endif + +#if HAS_ACCEL +accel_t +ao_data_accel(volatile struct ao_data *packet) { + accel_t raw; + raw = ao_data_accel_raw(packet); + if (ao_config.pad_orientation != AO_PAD_ORIENTATION_ANTENNA_UP) + raw = ao_data_accel_invert(raw); + return raw; +} +#endif