diff options
880 files changed, 4248 insertions, 1371 deletions
| @@ -1,3 +1,515 @@ +commit c0ad087008856cfc2233b977abfc3f1dcbaccdcc +Merge: 148b013 4fdf8ca +Author: Bdale Garbee <bdale@gag.com> +Date:   Mon Sep 5 20:59:11 2016 -0600 + +    Merge branch 'master' into branch-1.6 + +commit 4fdf8ca9ca1cd5a84b03bd7a03c5806af64b413d +Author: Keith Packard <keithp@keithp.com> +Date:   Mon Sep 5 20:55:17 2016 -0600 + +    Remove pyro wizard file from master +     +    This isn't done yet. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 89b8b2ee98e8d329559f54058c574ba9122ced8e +Author: Keith Packard <keithp@keithp.com> +Date:   Mon Sep 5 20:46:05 2016 -0600 + +    Bump version to 1.6.8 +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit a37b687670dd1ccb0274e5fe6bf6145c4fc5acc8 +Author: Keith Packard <keithp@keithp.com> +Date:   Mon Sep 5 20:45:12 2016 -0600 + +    altosui: Don't ship TeleMetrum v3.0 firmware (yet) +     +    We haven't finished this yet, so don't deliver firmware for it. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 45084fd04326b979f349870f09ff9af1b3155cbe +Author: Keith Packard <keithp@keithp.com> +Date:   Sat Sep 3 21:02:35 2016 -0500 + +    Add 1.6.8 release notes +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 9279b0cd52333a846b57af890f708ebb364b62b7 +Author: Keith Packard <keithp@keithp.com> +Date:   Sat Sep 3 01:21:34 2016 -0500 + +    altos/stm: Set SPI slave DMA priority to HIGH/VERY_HIGH +     +    Set spi slave DMA priority MOSI to HIGH and MISO to VERY_HIGH. Slave +    SPI doesn't have the luxury of slowing down when the system is busy, +    so provide it maximum memory bandwidth to try and keep up with the +    master. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit d80995c4535a3655ca1b9ca674d6839cfef84c4e +Author: Keith Packard <keithp@keithp.com> +Date:   Sat Sep 3 01:20:20 2016 -0500 + +    altos/stm: Set i2c recv DMA to HIGH +     +    Make sure receive DMA is higher than any TX dma so that +    it always runs in preference. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit af2eefbed43e56885a7321319d69b7be17354cdd +Author: Keith Packard <keithp@keithp.com> +Date:   Sat Sep 3 00:55:19 2016 -0500 + +    altos/stm: Set MISO DMA priority to HIGH to avoid OVR +     +    When the MISO DMA priority is too low, and the processor gets busy, +    it's possible for SPI input to overrun the processor, which causes the +    MISO DMA to get out of sync and never finish. Set the MISO DMA +    priority to HIGH to avoid this. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 4fc5cfa2c63c43ab0a9ef7e0cc6832fb1c163bd6 +Author: Keith Packard <keithp@keithp.com> +Date:   Sat Sep 3 00:53:44 2016 -0500 + +    altos/stm: Create funcs to set SPI DMA parameters +     +    Instead of having nearly duplicate versions of the SPI DMA +    configuration calls, create helper funcs that do most of the work so +    that the SPI API funcs are shorter and clearer. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 1710a4921d4f408300c7d5adf0e83d08cc86be20 +Author: Keith Packard <keithp@keithp.com> +Date:   Sat Sep 3 00:52:12 2016 -0500 + +    altos/stm: Make ao_spi_duplex out pointer const +     +    Provides a bit better typechecking opportunities for this function. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 5d913dde1fa58cbcb5edbc88405180e37ba0dbcd +Author: Keith Packard <keithp@keithp.com> +Date:   Fri Sep 2 23:40:03 2016 -0500 + +    Bump version to 1.6.7.1 +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 30e8f003381c30434058905f53f5a219ac5feb4f +Author: Keith Packard <keithp@keithp.com> +Date:   Fri Sep 2 23:36:36 2016 -0500 + +    ao-tools/ao-cal-freq: Re-open usb device each try +     +    Instead of trying to re-use the same file descriptor, close and +    re-open the device each time around the loop to avoid getting stuck +    when calibrating TeleMega boards. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 3ea30c1909b3ae23918ea6d0a53d2c4065b08763 +Author: Keith Packard <keithp@keithp.com> +Date:   Fri Sep 2 23:34:47 2016 -0500 + +    ao-tools/ao-usbload: Fix -f flag, remove debug hacks +     +    The code to validate the usb id and product name had some debug hacks +    left enabled, which caused it to fail. The short -f version of the +    force flag was also not getting parsed correctly. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit dfaabc1ca3aaad0d249283308b06d3e0567f0c59 +Author: Keith Packard <keithp@keithp.com> +Date:   Fri Sep 2 23:33:27 2016 -0500 + +    ao-bringup/turnon_telemetrum: serial on cmd line. Loop on accel fail +     +    These make the script easier to use +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 8bbef0c7039f4a0c6ac368fd994c2e52d84d293c +Author: Keith Packard <keithp@keithp.com> +Date:   Fri Sep 2 16:13:25 2016 -0500 + +    altosui: Deal with connect failure in AltosConfigTD +     +    When the USB connection times out, abort any pending operations and +    clean up the thread correctly. Also, deal with the serial line being +    closed by checking for null. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit b2d013aef5b76ff527e8174dff7f6ffe0dfaefae +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Aug 31 21:27:10 2016 -0600 + +    ao-tools/ao-cal-freq: --verbose option has no parameter +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 08923aa0cf31ae7bd73b66b4d1cd81fae4241ff0 +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Aug 31 21:25:59 2016 -0600 + +    ao-bringup: telemega allow serial on command line, loop on accel fail +     +    Allow the serial number on the turnon_telemega command line, instead +    of reading it. +     +    When accel cal fails, loop waiting for it to succeed instead of +    continuing blindly. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit ab75ab10564c4d5d05719c382a3b71585cd70710 +Author: Keith Packard <keithp@keithp.com> +Date:   Mon Aug 29 09:27:53 2016 -0700 + +    altos/cc1120: remove unused status from ao_radio_fifo_write_stop +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 462039c769f2db9328b04759807c30691f2b96c2 +Author: Keith Packard <keithp@keithp.com> +Date:   Sun Aug 14 15:57:39 2016 -0700 + +    ao-usbload: Check target device name to avoid mis-flashing +     +    Instead of blindly loading firmware, go get the old device's name and +    make sure it matches the new firmware. +     +    Add --force option to allow this to be overridden. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit c62816a00b9aa40879a2ea98da2d10667e09b704 +Author: Keith Packard <keithp@keithp.com> +Date:   Sun Aug 14 15:55:13 2016 -0700 + +    ao-chaosread: Parse -i and -b options +     +    Need to pass the single-byte verisons to getopt_long +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit af1d41e32fc04d5897fd2dc736391d263af48727 +Author: Keith Packard <keithp@keithp.com> +Date:   Mon Aug 8 22:40:41 2016 -0700 + +    Bump verison to 1.6.7 +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 46b1234140c04dbfac22be0fdf80be96506b6948 +Author: Keith Packard <keithp@keithp.com> +Date:   Mon Aug 8 22:39:16 2016 -0700 + +    altos/stmf0: Switch ADC fast to ADC clock +     +    Using this slower clock eliminates sampling problems with the ADC and +    cleans up the chaoskey raw data. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 48088d1d6a66c5d5271b52191367f07b09626b29 +Author: Keith Packard <keithp@keithp.com> +Date:   Thu Aug 4 09:54:16 2016 -0700 + +    altos: Flash all LEDS during power on +     +    This tests the LEDS to make sure they all work on the following devices: +     +    easymega-v1.0 +    telebt-v3.0 +    teledongle-v3.0 +    telemega-v1.0 +    telemega-v2.0 +    telemetrum-v2.0 +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 71e3a59e42c284fde8ac2767abd029230ed86e07 +Author: Keith Packard <keithp@keithp.com> +Date:   Thu Aug 4 09:52:05 2016 -0700 + +    ao-bringup: Add colors to chaoskey test result reporting +     +    This makes them show up nice and bright in the terminal window. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit bc920c80ef447a5bcdf8165b69fb28b8f63609df +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:35:36 2016 -0700 + +    Bump to version 1.6.6 +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 165868999f45f4572ff2585fcb3986974a5bbd5c +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:52:39 2016 -0700 + +    ao-bringup: Use released files for chaoskey turnon +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit c4926a69d6e72a035197b3d617c62893a7ea1861 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:30:15 2016 -0700 + +    ao-bringup: Test chaoskey using dieharder +     +    This uses a subset of the dieharder tests which run in reasonable time +    and don't appear to emit false negatives on a regular basis. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit d52cb9dac725206ba7b2d26818c84f134d5bf183 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:53:17 2016 -0700 + +    ao-chaosread: Eliminate double-free when serial match fails +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 3bdc9028502c766d1c8ddb4f0dedba4bbc22384e +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:28:17 2016 -0700 + +    ao-chaosread: Add --infinite and --bytes options +     +    The --infinite option keeps writing data. +    The --bytes options pulls out bits 1-8 which should provide 8 true +    bits of entropy. +     +    This combination allows ao-chaosread to be fed directly into dieharder +    to validate the hardware. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 826ad792389150ea8d80e341cb8ea023db83c9a2 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:26:49 2016 -0700 + +    altos: Use standard FIPS testing for chaoskey +     +    Check to make sure we aren't repeating a block coming from the +    unwhitened source, which is the standard online FIPS test for RNGs. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 1934468e96ea9d179abf6e3e728b6b14ce793f46 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:53:50 2016 -0700 + +    altos/stmf0: Clean .bin files from flash-loader dirs +     +    The .bin files are what the DFU utility uses to flash the boot loader +    using USB. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 782013d0ff2c9f076952c0e172bfcb7016699d5f +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:32:43 2016 -0700 + +    altos/stmf0: Hook up clock output support +     +    This was used to try and not have two xtals on telemini, but failed +    because the provided clock has too much noise. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 99753673a4a97423300427e276bf550ae5353842 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:31:41 2016 -0700 + +    altos: Make telelcotwo control two boxes instead of two pads +     +    telefiretwo is now a single pad box, so telelcotwo needs to switch +    between boxes instead of pads on the same box. Do this by re-purposing +    the pad arming switches into a box selector and arming switch. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit be84201495fa3cabd699012e57e797355e2bd792 +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Jul 27 21:28:34 2016 -0700 + +    altos: Add 'ao_button_get' to button driver +     +    This returns the current state of the button; useful to check what the +    value is at startup. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit a6701283af7ed2b3016a910d6edbe4a5e8304581 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Aug 2 16:33:52 2016 -0700 + +    altoslib: Add a 'seconds' method to AltosGPS +     +    This computes the time in seconds since the epoch from GPS time +    information. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 647690dbe084d188ba3973da631871a65f2dc50d +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Jul 27 13:29:20 2016 -0700 + +    altos: Stop building cc1111-based telemini v2.0 firmware +     +    This product never worked, so stop insisting that it actually build. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit fe13426daff08f2beface2c1906f9a6184f6b987 +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Jul 27 13:26:22 2016 -0700 + +    altos: Don't switch to flight 0 when log fills in flight +     +    If the log is full at startup, we want to transmit flight 0 to let the +    ground station know. However, we don't want to switch to flight 0 in +    flight, so save the initial telemetry flight number (0 or the real +    flight number) at startup and use that throughout the flight. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 71ddb973ff75680e78fbbef7978ab3893c367629 +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Jul 27 13:24:57 2016 -0700 + +    altos: Expose cc1200 radio test functions for telemini bringup +     +    This exposes the cc1200 radio test function so we can load special +    test firmware in telemini to do the radio cal as it has no USB to +    perform that interactively. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 59874a062543c61d164089e8b31f55a9b860c0b1 +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Jul 27 13:23:06 2016 -0700 + +    fixup for interleave + +commit 2507b9f29d25f77de249103805087a704069c625 +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Jul 27 13:17:51 2016 -0700 + +    altos: Don't access cc1120 SPI bus during recv after abort has started +     +    When the receive timeout happens, the radio may still interrupt while +    the SPI bus is getting shut down. If this happens, the interrupt +    handler shouldn't touch the SPI bus at all as it may well be turned +    off, which would cause the receive function to wedge waiting for a spi +    byte transfer to happen. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 17adfd7939ff697afa96f7207a3fe17b6af789bd +Author: Keith Packard <keithp@keithp.com> +Date:   Wed Jul 27 12:24:27 2016 -0700 + +    altos: Keep telemetry and command output from interleaving +     +    When monitoring telemetry, the frame needs to be sent together on one +    line, not split with the output of a command (like 'a') mixed in. +     +    Use a mutex for products with monitoring to keep command output and +    telemetry output each on separate lines. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 1667cb8e8b702b05fc3ec39ee49029885df64a4a +Author: Keith Packard <keithp@keithp.com> +Date:   Sat Jul 2 20:00:01 2016 +0200 + +    altos: Add STM32F0 beep and SPI byte API. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit f39bee8875a0595b3d7ec7f5575d1e5eeb7544ec +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Jul 12 21:06:23 2016 -0700 + +    altosuilib: Show indicator when they switch from invalid back to valid +     +    The 'hide' value wasn't getting reset to 'false' each time the state +    of the indicators was checked, so indicators would get hidden and then +    never shown again. +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit efd91febfa9bebd2f03508b2240916551450f831 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Jul 12 21:06:05 2016 -0700 + +    Bump version to 1.6.5.1 after 1.6.5 release +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 639d8b3c4353ee25a0536e01653f3a86feb90ad5 +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Jul 12 15:53:47 2016 -0700 + +    altos: Add telemetrum v3.0 +     +    Like Telemetrum v2.0, but with cc1200 instead of cc1120 +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 1085ec5d57e0ed5d132f2bbdac1a0b6a32c0ab4a +Author: Keith Packard <keithp@keithp.com> +Date:   Tue Jul 5 18:03:49 2016 +0200 + +    Switch from GPLv2 to GPLv2+ +     +    Signed-off-by: Keith Packard <keithp@keithp.com> + +commit 148b013dd29c26920ddfb53449ed4d8cc5a4b5ee +Merge: ea1ff22 cd97128 +Author: Bdale Garbee <bdale@gag.com> +Date:   Tue Jul 5 10:23:18 2016 +0200 + +    Merge branch 'master' into branch-1.6 + +commit cd97128e30c47edfcc71f7d872cbdad14867934c +Author: Bdale Garbee <bdale@gag.com> +Date:   Tue Jul 5 10:21:29 2016 +0200 + +    remove debian/ from master branch, it should live only on the debian branch + +commit a439ee4ac0398f70209292d015c5b82cd58d1d9f +Author: Bdale Garbee <bdale@gag.com> +Date:   Tue Jul 5 00:48:07 2016 +0200 + +    updates made during 1.6.5 release process + +commit ea1ff225f1f450ee3fc377807d1bb7b982bf792d +Author: Bdale Garbee <bdale@gag.com> +Date:   Mon Jul 4 23:47:56 2016 +0200 + +    updating ChangeLog for 1.6.5 release +  commit 2e26d1ab42163988dc26b06b016c3b05efe17659  Merge: 639e461 65ed2f5  Author: Bdale Garbee <bdale@gag.com> @@ -6,7 +6,8 @@ Copyright and License  	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 diff --git a/altosdroid/AndroidManifest.xml.in b/altosdroid/AndroidManifest.xml.in index 2644d747..3f17188e 100644 --- a/altosdroid/AndroidManifest.xml.in +++ b/altosdroid/AndroidManifest.xml.in @@ -1,19 +1,22 @@  <?xml version="1.0" encoding="utf-8"?>  <!-- - * Copyright © 2012 Mike Beattie <mike@ethernal.org> - * - * 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. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + + Copyright © 2012 Mike Beattie <mike@ethernal.org> + + 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; 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 + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +  -->  <manifest xmlns:android="http://schemas.android.com/apk/res/android"            package="org.altusmetrum.AltosDroid" diff --git a/altosdroid/res/layout/altosdroid.xml b/altosdroid/res/layout/altosdroid.xml index 71b7ad05..df870672 100644 --- a/altosdroid/res/layout/altosdroid.xml +++ b/altosdroid/res/layout/altosdroid.xml @@ -1,19 +1,22 @@  <?xml version="1.0" encoding="utf-8"?>  <!-- -	 Copyright © 2012-2013 Mike Beattie <mike@ethernal.org> -	 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. + Copyright © 2012-2013 Mike Beattie <mike@ethernal.org> -	 This program is distributed in the hope that it will be useful, but -	 WITHOUT ANY WARRANTY; without even the implied warranty of -	 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU -	 General Public License for more details. + 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; 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 + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. -	 You should have received a copy of the GNU General Public License along -	 with this program; if not, write to the Free Software Foundation, Inc., -	 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.  -->  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  	android:layout_width="fill_parent" diff --git a/altosdroid/res/layout/device_list.xml b/altosdroid/res/layout/device_list.xml index 57e5501e..0c103e9d 100644 --- a/altosdroid/res/layout/device_list.xml +++ b/altosdroid/res/layout/device_list.xml @@ -5,7 +5,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 diff --git a/altosdroid/res/layout/frequency.xml b/altosdroid/res/layout/frequency.xml index 7f8d4041..7adbdc16 100644 --- a/altosdroid/res/layout/frequency.xml +++ b/altosdroid/res/layout/frequency.xml @@ -5,7 +5,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 diff --git a/altosdroid/res/layout/idle_mode.xml b/altosdroid/res/layout/idle_mode.xml index d6a05fbb..6c598c1c 100644 --- a/altosdroid/res/layout/idle_mode.xml +++ b/altosdroid/res/layout/idle_mode.xml @@ -5,7 +5,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 diff --git a/altosdroid/res/layout/igniter_status.xml b/altosdroid/res/layout/igniter_status.xml index 298f9155..931ad626 100644 --- a/altosdroid/res/layout/igniter_status.xml +++ b/altosdroid/res/layout/igniter_status.xml @@ -5,7 +5,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 diff --git a/altosdroid/res/layout/igniters.xml b/altosdroid/res/layout/igniters.xml index 350a1e58..6ce5b242 100644 --- a/altosdroid/res/layout/igniters.xml +++ b/altosdroid/res/layout/igniters.xml @@ -5,7 +5,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 diff --git a/altosdroid/res/layout/manage_frequencies.xml b/altosdroid/res/layout/manage_frequencies.xml index 77ded1d9..afb3310f 100644 --- a/altosdroid/res/layout/manage_frequencies.xml +++ b/altosdroid/res/layout/manage_frequencies.xml @@ -5,7 +5,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 diff --git a/altosdroid/res/layout/map_preload.xml b/altosdroid/res/layout/map_preload.xml index e8b0f26c..321e5ee3 100644 --- a/altosdroid/res/layout/map_preload.xml +++ b/altosdroid/res/layout/map_preload.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/layout/map_type.xml b/altosdroid/res/layout/map_type.xml index 610e6bbf..e5cea22a 100644 --- a/altosdroid/res/layout/map_type.xml +++ b/altosdroid/res/layout/map_type.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/layout/setup.xml b/altosdroid/res/layout/setup.xml index 630378a1..eeaf60ab 100644 --- a/altosdroid/res/layout/setup.xml +++ b/altosdroid/res/layout/setup.xml @@ -5,7 +5,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 diff --git a/altosdroid/res/layout/tab_flight.xml b/altosdroid/res/layout/tab_flight.xml index 85c171b2..36d277d7 100644 --- a/altosdroid/res/layout/tab_flight.xml +++ b/altosdroid/res/layout/tab_flight.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/layout/tab_map.xml b/altosdroid/res/layout/tab_map.xml index 952abd49..25ae3a8b 100644 --- a/altosdroid/res/layout/tab_map.xml +++ b/altosdroid/res/layout/tab_map.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/layout/tab_pad.xml b/altosdroid/res/layout/tab_pad.xml index 88648c3b..990a6be3 100644 --- a/altosdroid/res/layout/tab_pad.xml +++ b/altosdroid/res/layout/tab_pad.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/layout/tab_recover.xml b/altosdroid/res/layout/tab_recover.xml index 201f45ed..7d1e750d 100644 --- a/altosdroid/res/layout/tab_recover.xml +++ b/altosdroid/res/layout/tab_recover.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/menu/option_menu.xml b/altosdroid/res/menu/option_menu.xml index b2ca01a4..53a0de0f 100644 --- a/altosdroid/res/menu/option_menu.xml +++ b/altosdroid/res/menu/option_menu.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/values/Colors.xml b/altosdroid/res/values/Colors.xml index 055c6df2..8dddae2d 100644 --- a/altosdroid/res/values/Colors.xml +++ b/altosdroid/res/values/Colors.xml @@ -4,7 +4,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 diff --git a/altosdroid/res/values/strings.xml b/altosdroid/res/values/strings.xml index 4380d62d..6a1d24fe 100644 --- a/altosdroid/res/values/strings.xml +++ b/altosdroid/res/values/strings.xml @@ -4,7 +4,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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java index 246fb0b0..8e65e1d0 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java @@ -4,7 +4,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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java index eddc83b9..b8c90773 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java index a62bf7fe..30a949d5 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidLink.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidLink.java index bca70d69..23105635 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidLink.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidLink.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapInterface.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapInterface.java index b9b4b50f..2b78104d 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapInterface.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapInterface.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapSourceListener.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapSourceListener.java index e2775ef5..294094c2 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapSourceListener.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidMapSourceListener.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java index 446bbf04..c7cdc961 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferences.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java index e48b7b2a..2e6ccb34 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidTab.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidTab.java index 3e10d3a4..11d8f624 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidTab.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidTab.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java index 0061eba1..76771adc 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOffline.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOnline.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOnline.java index 9a828df5..9e5d6dee 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOnline.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosMapOnline.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosUsb.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosUsb.java index 4b007cb1..8d0a725a 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosUsb.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosUsb.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java index f22298d7..039ba149 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosViewPager.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosVoice.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosVoice.java index d7c0f623..811b0367 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosVoice.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosVoice.java @@ -4,7 +4,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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/BuildInfo.java.in b/altosdroid/src/org/altusmetrum/AltosDroid/BuildInfo.java.in index e9b3011a..aa6c9a74 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/BuildInfo.java.in +++ b/altosdroid/src/org/altusmetrum/AltosDroid/BuildInfo.java.in @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/DeviceAddress.java b/altosdroid/src/org/altusmetrum/AltosDroid/DeviceAddress.java index 673d72dd..6f845566 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/DeviceAddress.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/DeviceAddress.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java b/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java index 6cecbdf1..c18d7309 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/IdleModeActivity.java b/altosdroid/src/org/altusmetrum/AltosDroid/IdleModeActivity.java index c4e950b6..7b3bbb4e 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/IdleModeActivity.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/IdleModeActivity.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/IgniterActivity.java b/altosdroid/src/org/altusmetrum/AltosDroid/IgniterActivity.java index d9229ad6..4b8dc3e8 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/IgniterActivity.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/IgniterActivity.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/ManageFrequenciesActivity.java b/altosdroid/src/org/altusmetrum/AltosDroid/ManageFrequenciesActivity.java index d8fd92df..0eef129e 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/ManageFrequenciesActivity.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/ManageFrequenciesActivity.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/MapTypeActivity.java b/altosdroid/src/org/altusmetrum/AltosDroid/MapTypeActivity.java index d8bcad75..a0c7233f 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/MapTypeActivity.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/MapTypeActivity.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/PreloadMapActivity.java b/altosdroid/src/org/altusmetrum/AltosDroid/PreloadMapActivity.java index 8e3e7b01..a8e87bf2 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/PreloadMapActivity.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/PreloadMapActivity.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/SetupActivity.java b/altosdroid/src/org/altusmetrum/AltosDroid/SetupActivity.java index 06e74d9b..41c3eb88 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/SetupActivity.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/SetupActivity.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java b/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java index dc8390e3..3143679a 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TabMap.java b/altosdroid/src/org/altusmetrum/AltosDroid/TabMap.java index 9e3cb530..5db5b85f 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TabMap.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TabMap.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java b/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java index fffc426a..492f7f5f 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TabRecover.java b/altosdroid/src/org/altusmetrum/AltosDroid/TabRecover.java index b0fe9e5f..97a35c9e 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TabRecover.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TabRecover.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java index 21ac0fbf..bc0b3615 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java @@ -4,7 +4,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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java index dc39c899..34c86ce5 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java @@ -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 diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryState.java b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryState.java index e7bef92c..32ba1254 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryState.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryState.java @@ -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 diff --git a/altoslib/AltosAccel.java b/altoslib/AltosAccel.java index c6a2da11..31aa7c1b 100644 --- a/altoslib/AltosAccel.java +++ b/altoslib/AltosAccel.java @@ -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 diff --git a/altoslib/AltosCRCException.java b/altoslib/AltosCRCException.java index 87d84370..80dca140 100644 --- a/altoslib/AltosCRCException.java +++ b/altoslib/AltosCRCException.java @@ -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 diff --git a/altoslib/AltosCSV.java b/altoslib/AltosCSV.java index b38ed8da..b5199456 100644 --- a/altoslib/AltosCSV.java +++ b/altoslib/AltosCSV.java @@ -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 diff --git a/altoslib/AltosCompanion.java b/altoslib/AltosCompanion.java index e228b074..2c03c922 100644 --- a/altoslib/AltosCompanion.java +++ b/altoslib/AltosCompanion.java @@ -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 diff --git a/altoslib/AltosConfigData.java b/altoslib/AltosConfigData.java index ce430d7a..6b55cc6f 100644 --- a/altoslib/AltosConfigData.java +++ b/altoslib/AltosConfigData.java @@ -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 diff --git a/altoslib/AltosConfigDataException.java b/altoslib/AltosConfigDataException.java index a55f75c2..59a8e9c1 100644 --- a/altoslib/AltosConfigDataException.java +++ b/altoslib/AltosConfigDataException.java @@ -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 diff --git a/altoslib/AltosConfigValues.java b/altoslib/AltosConfigValues.java index babd7a4d..bc20d21d 100644 --- a/altoslib/AltosConfigValues.java +++ b/altoslib/AltosConfigValues.java @@ -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 diff --git a/altoslib/AltosConvert.java b/altoslib/AltosConvert.java index 5498ae98..288f43ce 100644 --- a/altoslib/AltosConvert.java +++ b/altoslib/AltosConvert.java @@ -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 diff --git a/altoslib/AltosDebug.java b/altoslib/AltosDebug.java index 0bb12688..aa1b298f 100644 --- a/altoslib/AltosDebug.java +++ b/altoslib/AltosDebug.java @@ -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 diff --git a/altoslib/AltosDistance.java b/altoslib/AltosDistance.java index 1ade5abb..0239c5ce 100644 --- a/altoslib/AltosDistance.java +++ b/altoslib/AltosDistance.java @@ -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 diff --git a/altoslib/AltosEeprom.java b/altoslib/AltosEeprom.java index 94009b57..6ed14d3a 100644 --- a/altoslib/AltosEeprom.java +++ b/altoslib/AltosEeprom.java @@ -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 diff --git a/altoslib/AltosEepromChunk.java b/altoslib/AltosEepromChunk.java index 4f956636..c9598254 100644 --- a/altoslib/AltosEepromChunk.java +++ b/altoslib/AltosEepromChunk.java @@ -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 diff --git a/altoslib/AltosEepromDownload.java b/altoslib/AltosEepromDownload.java index fa76574c..c38fcfdf 100644 --- a/altoslib/AltosEepromDownload.java +++ b/altoslib/AltosEepromDownload.java @@ -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 diff --git a/altoslib/AltosEepromFile.java b/altoslib/AltosEepromFile.java index d23116a6..957c826a 100644 --- a/altoslib/AltosEepromFile.java +++ b/altoslib/AltosEepromFile.java @@ -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 diff --git a/altoslib/AltosEepromGPS.java b/altoslib/AltosEepromGPS.java index a6d2ef32..e76b36dd 100644 --- a/altoslib/AltosEepromGPS.java +++ b/altoslib/AltosEepromGPS.java @@ -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 diff --git a/altoslib/AltosEepromHeader.java b/altoslib/AltosEepromHeader.java index 1f94ac07..37b666b4 100644 --- a/altoslib/AltosEepromHeader.java +++ b/altoslib/AltosEepromHeader.java @@ -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 diff --git a/altoslib/AltosEepromIterable.java b/altoslib/AltosEepromIterable.java index c0311b99..77632ac1 100644 --- a/altoslib/AltosEepromIterable.java +++ b/altoslib/AltosEepromIterable.java @@ -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 diff --git a/altoslib/AltosEepromList.java b/altoslib/AltosEepromList.java index abc30a71..fc72fd95 100644 --- a/altoslib/AltosEepromList.java +++ b/altoslib/AltosEepromList.java @@ -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 diff --git a/altoslib/AltosEepromLog.java b/altoslib/AltosEepromLog.java index 9eb5d230..1bca6563 100644 --- a/altoslib/AltosEepromLog.java +++ b/altoslib/AltosEepromLog.java @@ -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 diff --git a/altoslib/AltosEepromMega.java b/altoslib/AltosEepromMega.java index 09fb4288..082d6054 100644 --- a/altoslib/AltosEepromMega.java +++ b/altoslib/AltosEepromMega.java @@ -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 diff --git a/altoslib/AltosEepromMetrum2.java b/altoslib/AltosEepromMetrum2.java index f23bffd2..f685b3ce 100644 --- a/altoslib/AltosEepromMetrum2.java +++ b/altoslib/AltosEepromMetrum2.java @@ -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 diff --git a/altoslib/AltosEepromMini.java b/altoslib/AltosEepromMini.java index b06e6c84..dc51e591 100644 --- a/altoslib/AltosEepromMini.java +++ b/altoslib/AltosEepromMini.java @@ -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 diff --git a/altoslib/AltosEepromMonitor.java b/altoslib/AltosEepromMonitor.java index 9f6094a5..792fde27 100644 --- a/altoslib/AltosEepromMonitor.java +++ b/altoslib/AltosEepromMonitor.java @@ -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 diff --git a/altoslib/AltosEepromTM.java b/altoslib/AltosEepromTM.java index a65bd11e..9a09f926 100644 --- a/altoslib/AltosEepromTM.java +++ b/altoslib/AltosEepromTM.java @@ -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 diff --git a/altoslib/AltosEepromTMini.java b/altoslib/AltosEepromTMini.java index 82f5aedf..2557f431 100644 --- a/altoslib/AltosEepromTMini.java +++ b/altoslib/AltosEepromTMini.java @@ -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 diff --git a/altoslib/AltosFile.java b/altoslib/AltosFile.java index dc2dba82..ef75762a 100644 --- a/altoslib/AltosFile.java +++ b/altoslib/AltosFile.java @@ -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 diff --git a/altoslib/AltosFlash.java b/altoslib/AltosFlash.java index 285e31d5..ad573305 100644 --- a/altoslib/AltosFlash.java +++ b/altoslib/AltosFlash.java @@ -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 diff --git a/altoslib/AltosFlashListener.java b/altoslib/AltosFlashListener.java index 170bf0b0..e15d7ac3 100644 --- a/altoslib/AltosFlashListener.java +++ b/altoslib/AltosFlashListener.java @@ -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 diff --git a/altoslib/AltosFlightDisplay.java b/altoslib/AltosFlightDisplay.java index 5a6d88d1..c395dc45 100644 --- a/altoslib/AltosFlightDisplay.java +++ b/altoslib/AltosFlightDisplay.java @@ -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 diff --git a/altoslib/AltosFlightReader.java b/altoslib/AltosFlightReader.java index 77711a4c..250e2236 100644 --- a/altoslib/AltosFlightReader.java +++ b/altoslib/AltosFlightReader.java @@ -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 diff --git a/altoslib/AltosFlightStats.java b/altoslib/AltosFlightStats.java index 32314b2b..98f13dac 100644 --- a/altoslib/AltosFlightStats.java +++ b/altoslib/AltosFlightStats.java @@ -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 diff --git a/altoslib/AltosFontListener.java b/altoslib/AltosFontListener.java index 9a1622d9..c7f339a0 100644 --- a/altoslib/AltosFontListener.java +++ b/altoslib/AltosFontListener.java @@ -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 diff --git a/altoslib/AltosFrequency.java b/altoslib/AltosFrequency.java index 874a9bcc..3b2a445a 100644 --- a/altoslib/AltosFrequency.java +++ b/altoslib/AltosFrequency.java @@ -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 diff --git a/altoslib/AltosGPS.java b/altoslib/AltosGPS.java index d29ccdd1..0b30ed45 100644 --- a/altoslib/AltosGPS.java +++ b/altoslib/AltosGPS.java @@ -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 @@ -20,6 +21,7 @@ package org.altusmetrum.altoslib_11;  import java.text.*;  import java.util.concurrent.*;  import java.io.*; +import java.time.*;  public class AltosGPS implements Cloneable { @@ -72,6 +74,24 @@ public class AltosGPS implements Cloneable {  		hour = minute = second = AltosLib.MISSING;  	} +	/* Return time since epoc in seconds */ +	public long seconds() { +		if (year == AltosLib.MISSING) +			return AltosLib.MISSING; +		if (month == AltosLib.MISSING) +			return AltosLib.MISSING; +		if (day == AltosLib.MISSING) +			return AltosLib.MISSING; +		if (hour == AltosLib.MISSING) +			return AltosLib.MISSING; +		if (minute == AltosLib.MISSING) +			return AltosLib.MISSING; +		if (second == AltosLib.MISSING) +			return AltosLib.MISSING; +		OffsetDateTime	odt = OffsetDateTime.of(year, month, day, hour, minute, second, 0, ZoneOffset.UTC); +		return odt.toEpochSecond(); +	} +  	public AltosGPS(AltosTelemetryMap map) throws ParseException {  		String	state = map.get_string(AltosTelemetryLegacy.AO_TELEM_GPS_STATE,  					       AltosTelemetryLegacy.AO_TELEM_GPS_STATE_ERROR); diff --git a/altoslib/AltosGPSSat.java b/altoslib/AltosGPSSat.java index 8b95c150..e2f0f380 100644 --- a/altoslib/AltosGPSSat.java +++ b/altoslib/AltosGPSSat.java @@ -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 diff --git a/altoslib/AltosGreatCircle.java b/altoslib/AltosGreatCircle.java index a2f12807..6e5bd362 100644 --- a/altoslib/AltosGreatCircle.java +++ b/altoslib/AltosGreatCircle.java @@ -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 diff --git a/altoslib/AltosHeight.java b/altoslib/AltosHeight.java index 01bd4a6b..0cd495fb 100644 --- a/altoslib/AltosHeight.java +++ b/altoslib/AltosHeight.java @@ -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 diff --git a/altoslib/AltosHexfile.java b/altoslib/AltosHexfile.java index e7f900c4..e746b649 100644 --- a/altoslib/AltosHexfile.java +++ b/altoslib/AltosHexfile.java @@ -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 diff --git a/altoslib/AltosHexsym.java b/altoslib/AltosHexsym.java index ab2beff5..2eb08f75 100644 --- a/altoslib/AltosHexsym.java +++ b/altoslib/AltosHexsym.java @@ -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 diff --git a/altoslib/AltosIMU.java b/altoslib/AltosIMU.java index dbadcf89..f6cadf1d 100644 --- a/altoslib/AltosIMU.java +++ b/altoslib/AltosIMU.java @@ -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 diff --git a/altoslib/AltosIdle.java b/altoslib/AltosIdle.java index 36a3ca04..d37af966 100644 --- a/altoslib/AltosIdle.java +++ b/altoslib/AltosIdle.java @@ -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 diff --git a/altoslib/AltosIdleFetch.java b/altoslib/AltosIdleFetch.java index 5102c16b..8871e9cc 100644 --- a/altoslib/AltosIdleFetch.java +++ b/altoslib/AltosIdleFetch.java @@ -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 diff --git a/altoslib/AltosIdleMonitor.java b/altoslib/AltosIdleMonitor.java index fde8c101..c374b601 100644 --- a/altoslib/AltosIdleMonitor.java +++ b/altoslib/AltosIdleMonitor.java @@ -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 diff --git a/altoslib/AltosIdleMonitorListener.java b/altoslib/AltosIdleMonitorListener.java index 27a51466..3349e9c4 100644 --- a/altoslib/AltosIdleMonitorListener.java +++ b/altoslib/AltosIdleMonitorListener.java @@ -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 diff --git a/altoslib/AltosIdleReader.java b/altoslib/AltosIdleReader.java index 795593f7..5903c968 100644 --- a/altoslib/AltosIdleReader.java +++ b/altoslib/AltosIdleReader.java @@ -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 diff --git a/altoslib/AltosIgnite.java b/altoslib/AltosIgnite.java index f3c07339..cdc5c614 100644 --- a/altoslib/AltosIgnite.java +++ b/altoslib/AltosIgnite.java @@ -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 diff --git a/altoslib/AltosImage.java b/altoslib/AltosImage.java index 9a0751b6..2e32b720 100644 --- a/altoslib/AltosImage.java +++ b/altoslib/AltosImage.java @@ -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 diff --git a/altoslib/AltosJson.java b/altoslib/AltosJson.java index 67f3a00a..22f81d03 100644 --- a/altoslib/AltosJson.java +++ b/altoslib/AltosJson.java @@ -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 diff --git a/altoslib/AltosKML.java b/altoslib/AltosKML.java index ba053015..25108bf9 100644 --- a/altoslib/AltosKML.java +++ b/altoslib/AltosKML.java @@ -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 diff --git a/altoslib/AltosLatLon.java b/altoslib/AltosLatLon.java index ed1dd64e..5865d3cc 100644 --- a/altoslib/AltosLatLon.java +++ b/altoslib/AltosLatLon.java @@ -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 diff --git a/altoslib/AltosLatitude.java b/altoslib/AltosLatitude.java index 04931ece..4663cd09 100644 --- a/altoslib/AltosLatitude.java +++ b/altoslib/AltosLatitude.java @@ -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 diff --git a/altoslib/AltosLaunchSite.java b/altoslib/AltosLaunchSite.java index 831fdf64..8a06cdb2 100644 --- a/altoslib/AltosLaunchSite.java +++ b/altoslib/AltosLaunchSite.java @@ -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 diff --git a/altoslib/AltosLaunchSiteListener.java b/altoslib/AltosLaunchSiteListener.java index 6167b7cf..d2ee601e 100644 --- a/altoslib/AltosLaunchSiteListener.java +++ b/altoslib/AltosLaunchSiteListener.java @@ -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 diff --git a/altoslib/AltosLaunchSites.java b/altoslib/AltosLaunchSites.java index db6a1f80..d5c41c82 100644 --- a/altoslib/AltosLaunchSites.java +++ b/altoslib/AltosLaunchSites.java @@ -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 diff --git a/altoslib/AltosLib.java b/altoslib/AltosLib.java index 044caf8d..cfa1fa27 100644 --- a/altoslib/AltosLib.java +++ b/altoslib/AltosLib.java @@ -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 diff --git a/altoslib/AltosLine.java b/altoslib/AltosLine.java index 90490192..952a21e3 100644 --- a/altoslib/AltosLine.java +++ b/altoslib/AltosLine.java @@ -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 diff --git a/altoslib/AltosLink.java b/altoslib/AltosLink.java index 32766674..76a4eb31 100644 --- a/altoslib/AltosLink.java +++ b/altoslib/AltosLink.java @@ -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 diff --git a/altoslib/AltosListenerState.java b/altoslib/AltosListenerState.java index 7d9ec2a4..80bc0df2 100644 --- a/altoslib/AltosListenerState.java +++ b/altoslib/AltosListenerState.java @@ -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 diff --git a/altoslib/AltosLocation.java b/altoslib/AltosLocation.java index 2ab07ebb..c612caaa 100644 --- a/altoslib/AltosLocation.java +++ b/altoslib/AltosLocation.java @@ -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 diff --git a/altoslib/AltosLog.java b/altoslib/AltosLog.java index 74017a29..6d873d78 100644 --- a/altoslib/AltosLog.java +++ b/altoslib/AltosLog.java @@ -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 diff --git a/altoslib/AltosLongitude.java b/altoslib/AltosLongitude.java index 77fe9c9a..4c6d1857 100644 --- a/altoslib/AltosLongitude.java +++ b/altoslib/AltosLongitude.java @@ -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 diff --git a/altoslib/AltosMag.java b/altoslib/AltosMag.java index 5864529f..e89ec0de 100644 --- a/altoslib/AltosMag.java +++ b/altoslib/AltosMag.java @@ -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 diff --git a/altoslib/AltosMap.java b/altoslib/AltosMap.java index 0c775f33..e3c4a6a7 100644 --- a/altoslib/AltosMap.java +++ b/altoslib/AltosMap.java @@ -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 diff --git a/altoslib/AltosMapCache.java b/altoslib/AltosMapCache.java index 28f6b116..4e529177 100644 --- a/altoslib/AltosMapCache.java +++ b/altoslib/AltosMapCache.java @@ -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 diff --git a/altoslib/AltosMapCacheListener.java b/altoslib/AltosMapCacheListener.java index b010d12f..057d1c43 100644 --- a/altoslib/AltosMapCacheListener.java +++ b/altoslib/AltosMapCacheListener.java @@ -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 diff --git a/altoslib/AltosMapInterface.java b/altoslib/AltosMapInterface.java index 78cd70eb..a2ea81db 100644 --- a/altoslib/AltosMapInterface.java +++ b/altoslib/AltosMapInterface.java @@ -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 diff --git a/altoslib/AltosMapLine.java b/altoslib/AltosMapLine.java index 187aa6d9..c475f52d 100644 --- a/altoslib/AltosMapLine.java +++ b/altoslib/AltosMapLine.java @@ -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 diff --git a/altoslib/AltosMapLoader.java b/altoslib/AltosMapLoader.java index d715df38..17e88bf4 100644 --- a/altoslib/AltosMapLoader.java +++ b/altoslib/AltosMapLoader.java @@ -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 diff --git a/altoslib/AltosMapLoaderListener.java b/altoslib/AltosMapLoaderListener.java index 97c8b7f5..07624f80 100644 --- a/altoslib/AltosMapLoaderListener.java +++ b/altoslib/AltosMapLoaderListener.java @@ -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 diff --git a/altoslib/AltosMapMark.java b/altoslib/AltosMapMark.java index 0fac5b37..cbe7bebe 100644 --- a/altoslib/AltosMapMark.java +++ b/altoslib/AltosMapMark.java @@ -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 diff --git a/altoslib/AltosMapPath.java b/altoslib/AltosMapPath.java index 75664f83..c2335169 100644 --- a/altoslib/AltosMapPath.java +++ b/altoslib/AltosMapPath.java @@ -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 diff --git a/altoslib/AltosMapPathPoint.java b/altoslib/AltosMapPathPoint.java index 89494408..5182ecfd 100644 --- a/altoslib/AltosMapPathPoint.java +++ b/altoslib/AltosMapPathPoint.java @@ -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 diff --git a/altoslib/AltosMapRectangle.java b/altoslib/AltosMapRectangle.java index 566e414f..a2321e19 100644 --- a/altoslib/AltosMapRectangle.java +++ b/altoslib/AltosMapRectangle.java @@ -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 diff --git a/altoslib/AltosMapStore.java b/altoslib/AltosMapStore.java index 53bfd517..7cce05a5 100644 --- a/altoslib/AltosMapStore.java +++ b/altoslib/AltosMapStore.java @@ -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 diff --git a/altoslib/AltosMapStoreListener.java b/altoslib/AltosMapStoreListener.java index bfee5f5c..e3935201 100644 --- a/altoslib/AltosMapStoreListener.java +++ b/altoslib/AltosMapStoreListener.java @@ -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 diff --git a/altoslib/AltosMapTile.java b/altoslib/AltosMapTile.java index b65f6fc1..4d6dc8d1 100644 --- a/altoslib/AltosMapTile.java +++ b/altoslib/AltosMapTile.java @@ -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 diff --git a/altoslib/AltosMapTileListener.java b/altoslib/AltosMapTileListener.java index 7939e4bd..219dcd07 100644 --- a/altoslib/AltosMapTileListener.java +++ b/altoslib/AltosMapTileListener.java @@ -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 diff --git a/altoslib/AltosMapTransform.java b/altoslib/AltosMapTransform.java index 53f3abac..266557b6 100644 --- a/altoslib/AltosMapTransform.java +++ b/altoslib/AltosMapTransform.java @@ -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 diff --git a/altoslib/AltosMapTypeListener.java b/altoslib/AltosMapTypeListener.java index 20740e7d..1d5e2b47 100644 --- a/altoslib/AltosMapTypeListener.java +++ b/altoslib/AltosMapTypeListener.java @@ -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 diff --git a/altoslib/AltosMapZoomListener.java b/altoslib/AltosMapZoomListener.java index 59c91e8e..93c26cbb 100644 --- a/altoslib/AltosMapZoomListener.java +++ b/altoslib/AltosMapZoomListener.java @@ -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 diff --git a/altoslib/AltosMma655x.java b/altoslib/AltosMma655x.java index 57bc7b91..503eb5fd 100644 --- a/altoslib/AltosMma655x.java +++ b/altoslib/AltosMma655x.java @@ -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 diff --git a/altoslib/AltosMs5607.java b/altoslib/AltosMs5607.java index e40479b1..631bc716 100644 --- a/altoslib/AltosMs5607.java +++ b/altoslib/AltosMs5607.java @@ -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 diff --git a/altoslib/AltosNoSymbol.java b/altoslib/AltosNoSymbol.java index 3f3cbbe7..37542cf0 100644 --- a/altoslib/AltosNoSymbol.java +++ b/altoslib/AltosNoSymbol.java @@ -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 diff --git a/altoslib/AltosOrient.java b/altoslib/AltosOrient.java index edaa304c..8b3a3541 100644 --- a/altoslib/AltosOrient.java +++ b/altoslib/AltosOrient.java @@ -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 diff --git a/altoslib/AltosParse.java b/altoslib/AltosParse.java index 45ef7dac..b4b6f875 100644 --- a/altoslib/AltosParse.java +++ b/altoslib/AltosParse.java @@ -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 diff --git a/altoslib/AltosPointDouble.java b/altoslib/AltosPointDouble.java index b18c4b48..31b03b1f 100644 --- a/altoslib/AltosPointDouble.java +++ b/altoslib/AltosPointDouble.java @@ -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 diff --git a/altoslib/AltosPointInt.java b/altoslib/AltosPointInt.java index 14b0dabf..233a8d31 100644 --- a/altoslib/AltosPointInt.java +++ b/altoslib/AltosPointInt.java @@ -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 diff --git a/altoslib/AltosPreferences.java b/altoslib/AltosPreferences.java index 569aaa54..35d44631 100644 --- a/altoslib/AltosPreferences.java +++ b/altoslib/AltosPreferences.java @@ -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 diff --git a/altoslib/AltosPreferencesBackend.java b/altoslib/AltosPreferencesBackend.java index 0580652e..327b534c 100644 --- a/altoslib/AltosPreferencesBackend.java +++ b/altoslib/AltosPreferencesBackend.java @@ -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 diff --git a/altoslib/AltosProgrammer.java b/altoslib/AltosProgrammer.java index 78be8282..ba04107b 100644 --- a/altoslib/AltosProgrammer.java +++ b/altoslib/AltosProgrammer.java @@ -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 diff --git a/altoslib/AltosPyro.java b/altoslib/AltosPyro.java index c948ce21..33d7486c 100644 --- a/altoslib/AltosPyro.java +++ b/altoslib/AltosPyro.java @@ -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 diff --git a/altoslib/AltosQuaternion.java b/altoslib/AltosQuaternion.java index 79559429..40786e32 100644 --- a/altoslib/AltosQuaternion.java +++ b/altoslib/AltosQuaternion.java @@ -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 diff --git a/altoslib/AltosRectangle.java b/altoslib/AltosRectangle.java index e1705548..50b3caa6 100644 --- a/altoslib/AltosRectangle.java +++ b/altoslib/AltosRectangle.java @@ -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 diff --git a/altoslib/AltosReplayReader.java b/altoslib/AltosReplayReader.java index f420c958..59ade871 100644 --- a/altoslib/AltosReplayReader.java +++ b/altoslib/AltosReplayReader.java @@ -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 diff --git a/altoslib/AltosRomconfig.java b/altoslib/AltosRomconfig.java index 37585879..dcfbda32 100644 --- a/altoslib/AltosRomconfig.java +++ b/altoslib/AltosRomconfig.java @@ -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 diff --git a/altoslib/AltosRotation.java b/altoslib/AltosRotation.java index 97cf7896..1235d86b 100644 --- a/altoslib/AltosRotation.java +++ b/altoslib/AltosRotation.java @@ -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 diff --git a/altoslib/AltosSavedState.java b/altoslib/AltosSavedState.java index f1d3e993..76d12faf 100644 --- a/altoslib/AltosSavedState.java +++ b/altoslib/AltosSavedState.java @@ -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 diff --git a/altoslib/AltosSelfFlash.java b/altoslib/AltosSelfFlash.java index b6056c9c..ae7cd69a 100644 --- a/altoslib/AltosSelfFlash.java +++ b/altoslib/AltosSelfFlash.java @@ -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 diff --git a/altoslib/AltosSensorEMini.java b/altoslib/AltosSensorEMini.java index 875dad0b..2581685f 100644 --- a/altoslib/AltosSensorEMini.java +++ b/altoslib/AltosSensorEMini.java @@ -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 diff --git a/altoslib/AltosSensorMM.java b/altoslib/AltosSensorMM.java index 654f85bd..d79c0805 100644 --- a/altoslib/AltosSensorMM.java +++ b/altoslib/AltosSensorMM.java @@ -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 diff --git a/altoslib/AltosSensorMega.java b/altoslib/AltosSensorMega.java index 18474e18..63c7a0ce 100644 --- a/altoslib/AltosSensorMega.java +++ b/altoslib/AltosSensorMega.java @@ -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 diff --git a/altoslib/AltosSensorMetrum.java b/altoslib/AltosSensorMetrum.java index 5f56a899..cb163911 100644 --- a/altoslib/AltosSensorMetrum.java +++ b/altoslib/AltosSensorMetrum.java @@ -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 diff --git a/altoslib/AltosSensorTGPS.java b/altoslib/AltosSensorTGPS.java index 80b27824..9c2bcb10 100644 --- a/altoslib/AltosSensorTGPS.java +++ b/altoslib/AltosSensorTGPS.java @@ -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 diff --git a/altoslib/AltosSensorTM.java b/altoslib/AltosSensorTM.java index e80bac6a..5d1b1b7f 100644 --- a/altoslib/AltosSensorTM.java +++ b/altoslib/AltosSensorTM.java @@ -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 diff --git a/altoslib/AltosSensorTMini.java b/altoslib/AltosSensorTMini.java index 739670f5..073144d4 100644 --- a/altoslib/AltosSensorTMini.java +++ b/altoslib/AltosSensorTMini.java @@ -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 diff --git a/altoslib/AltosSpeed.java b/altoslib/AltosSpeed.java index 73851979..465c190c 100644 --- a/altoslib/AltosSpeed.java +++ b/altoslib/AltosSpeed.java @@ -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 diff --git a/altoslib/AltosState.java b/altoslib/AltosState.java index 15cf7d64..fd2684db 100644 --- a/altoslib/AltosState.java +++ b/altoslib/AltosState.java @@ -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 diff --git a/altoslib/AltosStateIterable.java b/altoslib/AltosStateIterable.java index bce2a8d9..5332aecd 100644 --- a/altoslib/AltosStateIterable.java +++ b/altoslib/AltosStateIterable.java @@ -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 diff --git a/altoslib/AltosStateUpdate.java b/altoslib/AltosStateUpdate.java index 1209c2a0..e9698cba 100644 --- a/altoslib/AltosStateUpdate.java +++ b/altoslib/AltosStateUpdate.java @@ -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 diff --git a/altoslib/AltosTelemetry.java b/altoslib/AltosTelemetry.java index d526e6e5..0caefcd6 100644 --- a/altoslib/AltosTelemetry.java +++ b/altoslib/AltosTelemetry.java @@ -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 diff --git a/altoslib/AltosTelemetryCompanion.java b/altoslib/AltosTelemetryCompanion.java index 8f0d06b0..a97fda2d 100644 --- a/altoslib/AltosTelemetryCompanion.java +++ b/altoslib/AltosTelemetryCompanion.java @@ -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 diff --git a/altoslib/AltosTelemetryConfiguration.java b/altoslib/AltosTelemetryConfiguration.java index 352f1808..6ded5461 100644 --- a/altoslib/AltosTelemetryConfiguration.java +++ b/altoslib/AltosTelemetryConfiguration.java @@ -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 diff --git a/altoslib/AltosTelemetryFile.java b/altoslib/AltosTelemetryFile.java index 5f512e14..9c5f8dae 100644 --- a/altoslib/AltosTelemetryFile.java +++ b/altoslib/AltosTelemetryFile.java @@ -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 diff --git a/altoslib/AltosTelemetryIterable.java b/altoslib/AltosTelemetryIterable.java index 256626f3..0cba86a3 100644 --- a/altoslib/AltosTelemetryIterable.java +++ b/altoslib/AltosTelemetryIterable.java @@ -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 diff --git a/altoslib/AltosTelemetryLegacy.java b/altoslib/AltosTelemetryLegacy.java index df41b7d9..08c52986 100644 --- a/altoslib/AltosTelemetryLegacy.java +++ b/altoslib/AltosTelemetryLegacy.java @@ -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 diff --git a/altoslib/AltosTelemetryLocation.java b/altoslib/AltosTelemetryLocation.java index 1cff3cd4..11995640 100644 --- a/altoslib/AltosTelemetryLocation.java +++ b/altoslib/AltosTelemetryLocation.java @@ -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 diff --git a/altoslib/AltosTelemetryMap.java b/altoslib/AltosTelemetryMap.java index 8e5bcd1c..c8185434 100644 --- a/altoslib/AltosTelemetryMap.java +++ b/altoslib/AltosTelemetryMap.java @@ -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 diff --git a/altoslib/AltosTelemetryMegaData.java b/altoslib/AltosTelemetryMegaData.java index ed0211a9..6ea5ec89 100644 --- a/altoslib/AltosTelemetryMegaData.java +++ b/altoslib/AltosTelemetryMegaData.java @@ -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 diff --git a/altoslib/AltosTelemetryMegaSensor.java b/altoslib/AltosTelemetryMegaSensor.java index 365db92d..2dfc455a 100644 --- a/altoslib/AltosTelemetryMegaSensor.java +++ b/altoslib/AltosTelemetryMegaSensor.java @@ -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 diff --git a/altoslib/AltosTelemetryMetrumData.java b/altoslib/AltosTelemetryMetrumData.java index 0d943836..53a10cc4 100644 --- a/altoslib/AltosTelemetryMetrumData.java +++ b/altoslib/AltosTelemetryMetrumData.java @@ -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 diff --git a/altoslib/AltosTelemetryMetrumSensor.java b/altoslib/AltosTelemetryMetrumSensor.java index 0ccc4e15..e15043b4 100644 --- a/altoslib/AltosTelemetryMetrumSensor.java +++ b/altoslib/AltosTelemetryMetrumSensor.java @@ -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 diff --git a/altoslib/AltosTelemetryMini.java b/altoslib/AltosTelemetryMini.java index 8bca55fa..74adb052 100644 --- a/altoslib/AltosTelemetryMini.java +++ b/altoslib/AltosTelemetryMini.java @@ -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 diff --git a/altoslib/AltosTelemetryRaw.java b/altoslib/AltosTelemetryRaw.java index c28d04d3..339043a6 100644 --- a/altoslib/AltosTelemetryRaw.java +++ b/altoslib/AltosTelemetryRaw.java @@ -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 diff --git a/altoslib/AltosTelemetryReader.java b/altoslib/AltosTelemetryReader.java index 370610b1..6a93c2c3 100644 --- a/altoslib/AltosTelemetryReader.java +++ b/altoslib/AltosTelemetryReader.java @@ -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 diff --git a/altoslib/AltosTelemetrySatellite.java b/altoslib/AltosTelemetrySatellite.java index d88e6cac..6897f0e6 100644 --- a/altoslib/AltosTelemetrySatellite.java +++ b/altoslib/AltosTelemetrySatellite.java @@ -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 diff --git a/altoslib/AltosTelemetrySensor.java b/altoslib/AltosTelemetrySensor.java index 7a4a9f35..3c3e6a01 100644 --- a/altoslib/AltosTelemetrySensor.java +++ b/altoslib/AltosTelemetrySensor.java @@ -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 diff --git a/altoslib/AltosTelemetryStandard.java b/altoslib/AltosTelemetryStandard.java index dea9c29e..4f0d7130 100644 --- a/altoslib/AltosTelemetryStandard.java +++ b/altoslib/AltosTelemetryStandard.java @@ -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 diff --git a/altoslib/AltosTemperature.java b/altoslib/AltosTemperature.java index 2b261b70..d63e81d1 100644 --- a/altoslib/AltosTemperature.java +++ b/altoslib/AltosTemperature.java @@ -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 diff --git a/altoslib/AltosUnits.java b/altoslib/AltosUnits.java index b46b30ad..717a106a 100644 --- a/altoslib/AltosUnits.java +++ b/altoslib/AltosUnits.java @@ -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 diff --git a/altoslib/AltosUnitsListener.java b/altoslib/AltosUnitsListener.java index 89dbdf77..e094810c 100644 --- a/altoslib/AltosUnitsListener.java +++ b/altoslib/AltosUnitsListener.java @@ -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 diff --git a/altoslib/AltosUnitsRange.java b/altoslib/AltosUnitsRange.java index f376a463..9f56001d 100644 --- a/altoslib/AltosUnitsRange.java +++ b/altoslib/AltosUnitsRange.java @@ -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 diff --git a/altoslib/AltosUnknownProduct.java b/altoslib/AltosUnknownProduct.java index fe16f441..114abc76 100644 --- a/altoslib/AltosUnknownProduct.java +++ b/altoslib/AltosUnknownProduct.java @@ -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 diff --git a/altoslib/AltosVersion.java.in b/altoslib/AltosVersion.java.in index 12fecaa0..a48c532b 100644 --- a/altoslib/AltosVersion.java.in +++ b/altoslib/AltosVersion.java.in @@ -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 diff --git a/altoslib/AltosVoltage.java b/altoslib/AltosVoltage.java index 5c9cea28..8031c805 100644 --- a/altoslib/AltosVoltage.java +++ b/altoslib/AltosVoltage.java @@ -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 diff --git a/altoslib/AltosWriter.java b/altoslib/AltosWriter.java index a3a394d3..691dc4de 100644 --- a/altoslib/AltosWriter.java +++ b/altoslib/AltosWriter.java @@ -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 diff --git a/altosui/Altos.java b/altosui/Altos.java index 1c8bfdb7..c2cf4090 100644 --- a/altosui/Altos.java +++ b/altosui/Altos.java @@ -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 diff --git a/altosui/AltosAscent.java b/altosui/AltosAscent.java index 99f7e5ad..a4f475cb 100644 --- a/altosui/AltosAscent.java +++ b/altosui/AltosAscent.java @@ -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 diff --git a/altosui/AltosChannelMenu.java b/altosui/AltosChannelMenu.java index 382b6ae4..effc0299 100644 --- a/altosui/AltosChannelMenu.java +++ b/altosui/AltosChannelMenu.java @@ -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 diff --git a/altosui/AltosCompanionInfo.java b/altosui/AltosCompanionInfo.java index 8bf25715..52815d6f 100644 --- a/altosui/AltosCompanionInfo.java +++ b/altosui/AltosCompanionInfo.java @@ -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 diff --git a/altosui/AltosConfig.java b/altosui/AltosConfig.java index 63f50206..07802247 100644 --- a/altosui/AltosConfig.java +++ b/altosui/AltosConfig.java @@ -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 diff --git a/altosui/AltosConfigPyroUI.java b/altosui/AltosConfigPyroUI.java index 4bfdb663..2d4b216c 100644 --- a/altosui/AltosConfigPyroUI.java +++ b/altosui/AltosConfigPyroUI.java @@ -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 diff --git a/altosui/AltosConfigTD.java b/altosui/AltosConfigTD.java index 61727498..621db3c0 100644 --- a/altosui/AltosConfigTD.java +++ b/altosui/AltosConfigTD.java @@ -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 @@ -197,6 +198,9 @@ public class AltosConfigTD implements ActionListener {  	final static int	serial_mode_save = 1;  	final static int	serial_mode_reboot = 2; +	SerialData serial_data; +	Thread serial_thread; +  	class SerialData implements Runnable {  		AltosConfigTD	config;  		int		serial_mode; @@ -206,9 +210,9 @@ public class AltosConfigTD implements ActionListener {  				boolean	been_there = false;  				config.reset_data(); -				for (;;) { +				while (config.serial_line != null) {  					config.serial_line.printf("c s\nf\nv\n"); -					for (;;) { +					while (config.serial_line != null) {  						try {  							String line = config.serial_line.get_reply(5000);  							config.process_line(line); @@ -255,6 +259,7 @@ public class AltosConfigTD implements ActionListener {  				/* fall through ... */  			case serial_mode_read:  				get_data(); +				serial_thread = null;  				break;  			}  		} @@ -266,11 +271,17 @@ public class AltosConfigTD implements ActionListener {  	}  	void run_serial_thread(int serial_mode) { -		SerialData	sd = new SerialData(this, serial_mode); -		Thread		st = new Thread(sd); -		st.start(); +		serial_data = new SerialData(this, serial_mode); +		serial_thread = new Thread(serial_data); +		serial_thread.start();  	} +	void abort_serial_thread() { +		if (serial_thread != null) { +			serial_thread.interrupt(); +			serial_thread = null; +		} +	}  	void init_ui () throws InterruptedException, TimeoutException {  		config_ui = new AltosConfigTDUI(owner);  		config_ui.addActionListener(this); @@ -279,6 +290,7 @@ public class AltosConfigTD implements ActionListener {  	}  	void abort() { +		abort_serial_thread();  		if (serial_line != null) {  			serial_line.close();  			serial_line = null; diff --git a/altosui/AltosConfigTDUI.java b/altosui/AltosConfigTDUI.java index 1c0e0fef..529c2fa2 100644 --- a/altosui/AltosConfigTDUI.java +++ b/altosui/AltosConfigTDUI.java @@ -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 diff --git a/altosui/AltosConfigUI.java b/altosui/AltosConfigUI.java index cb7af829..e5f1949a 100644 --- a/altosui/AltosConfigUI.java +++ b/altosui/AltosConfigUI.java @@ -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 diff --git a/altosui/AltosConfigureUI.java b/altosui/AltosConfigureUI.java index b4f423d9..6aefb3a6 100644 --- a/altosui/AltosConfigureUI.java +++ b/altosui/AltosConfigureUI.java @@ -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 diff --git a/altosui/AltosDescent.java b/altosui/AltosDescent.java index 44bcecee..0c3a8e9e 100644 --- a/altosui/AltosDescent.java +++ b/altosui/AltosDescent.java @@ -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 diff --git a/altosui/AltosDevice.java b/altosui/AltosDevice.java index d1bc5fd7..9e3b2a5a 100644 --- a/altosui/AltosDevice.java +++ b/altosui/AltosDevice.java @@ -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 diff --git a/altosui/AltosFlightStatus.java b/altosui/AltosFlightStatus.java index 82c63396..4288fc9f 100644 --- a/altosui/AltosFlightStatus.java +++ b/altosui/AltosFlightStatus.java @@ -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 diff --git a/altosui/AltosFlightStatusTableModel.java b/altosui/AltosFlightStatusTableModel.java index dc5b96a9..7b872df9 100644 --- a/altosui/AltosFlightStatusTableModel.java +++ b/altosui/AltosFlightStatusTableModel.java @@ -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 diff --git a/altosui/AltosFlightStatusUpdate.java b/altosui/AltosFlightStatusUpdate.java index 88d6f0ff..82ef43c2 100644 --- a/altosui/AltosFlightStatusUpdate.java +++ b/altosui/AltosFlightStatusUpdate.java @@ -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 diff --git a/altosui/AltosFlightUI.java b/altosui/AltosFlightUI.java index 63f8c670..cf03d2dc 100644 --- a/altosui/AltosFlightUI.java +++ b/altosui/AltosFlightUI.java @@ -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 diff --git a/altosui/AltosGraphUI.java b/altosui/AltosGraphUI.java index 4f394d73..4ca2b77c 100644 --- a/altosui/AltosGraphUI.java +++ b/altosui/AltosGraphUI.java @@ -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 or any later version 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 diff --git a/altosui/AltosIdleMonitorUI.java b/altosui/AltosIdleMonitorUI.java index 1a992946..4d5c3b2d 100644 --- a/altosui/AltosIdleMonitorUI.java +++ b/altosui/AltosIdleMonitorUI.java @@ -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 diff --git a/altosui/AltosIgniteUI.java b/altosui/AltosIgniteUI.java index 84dc54db..15493b8a 100644 --- a/altosui/AltosIgniteUI.java +++ b/altosui/AltosIgniteUI.java @@ -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 diff --git a/altosui/AltosIgnitor.java b/altosui/AltosIgnitor.java index 13d99124..fabf4320 100644 --- a/altosui/AltosIgnitor.java +++ b/altosui/AltosIgnitor.java @@ -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 diff --git a/altosui/AltosLanded.java b/altosui/AltosLanded.java index 77c504b8..ded08537 100644 --- a/altosui/AltosLanded.java +++ b/altosui/AltosLanded.java @@ -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 diff --git a/altosui/AltosLaunch.java b/altosui/AltosLaunch.java index fb2cd883..d4e73b3e 100644 --- a/altosui/AltosLaunch.java +++ b/altosui/AltosLaunch.java @@ -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 diff --git a/altosui/AltosLaunchUI.java b/altosui/AltosLaunchUI.java index 22608c1b..835858e2 100644 --- a/altosui/AltosLaunchUI.java +++ b/altosui/AltosLaunchUI.java @@ -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 diff --git a/altosui/AltosPad.java b/altosui/AltosPad.java index b6f1f3c9..d411c969 100644 --- a/altosui/AltosPad.java +++ b/altosui/AltosPad.java @@ -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 diff --git a/altosui/AltosUI.java b/altosui/AltosUI.java index fa259906..019bbb9e 100644 --- a/altosui/AltosUI.java +++ b/altosui/AltosUI.java @@ -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 @@ -545,14 +546,22 @@ public class AltosUI extends AltosUIFrame {  			AltosStateIterable eef = record_iterable(file);  			for (AltosState state : eef) { -				System.out.printf ("tick %d state %d height %g\n", -						   state.tick, state.state(), state.height()); -				if ((state.set & AltosState.set_gps) != 0) -					System.out.printf ("time %g lat %g lon %g alt %g\n", -							   state.time_since_boost(), +				if ((state.set & AltosState.set_gps) != 0) { +					System.out.printf ("time %d %d-%d-%d %d:%d:%d lat %g lon %g alt %g\n", +							   state.gps.seconds(), +							   state.gps.year, +							   state.gps.month, +							   state.gps.day, +							   state.gps.hour, +							   state.gps.minute, +							   state.gps.second,  							   state.gps.lat,  							   state.gps.lon,  							   state.gps.alt); +				} else { +					System.out.printf ("tick %d state %d height %g\n", +							   state.tick, state.state(), state.height()); +				}  			}  		} catch (Exception e) { diff --git a/altosui/Makefile.am b/altosui/Makefile.am index cfe3bb5b..c3892d22 100644 --- a/altosui/Makefile.am +++ b/altosui/Makefile.am @@ -126,6 +126,8 @@ FIRMWARE_TM_1_0=$(top_srcdir)/src/telemetrum-v1.0/telemetrum-v1.0-$(VERSION).ihx  FIRMWARE_TM_1_1=$(top_srcdir)/src/telemetrum-v1.1/telemetrum-v1.1-$(VERSION).ihx  FIRMWARE_TM_1_2=$(top_srcdir)/src/telemetrum-v1.2/telemetrum-v1.2-$(VERSION).ihx  FIRMWARE_TM_2_0=$(top_srcdir)/src/telemetrum-v2.0/telemetrum-v2.0-$(VERSION).ihx +#FIRMWARE_TM_3_0=$(top_srcdir)/src/telemetrum-v3.0/telemetrum-v3.0-$(VERSION).ihx +#FIRMWARE_TM=$(FIRMWARE_TM_1_0) $(FIRMWARE_TM_1_1) $(FIRMWARE_TM_1_2) $(FIRMWARE_TM_2_0) $(FIRMWARE_TM_3_0)  FIRMWARE_TM=$(FIRMWARE_TM_1_0) $(FIRMWARE_TM_1_1) $(FIRMWARE_TM_1_2) $(FIRMWARE_TM_2_0)  FIRMWARE_TELEMINI_1_0=$(top_srcdir)/src/telemini-v1.0/telemini-v1.0-$(VERSION).ihx diff --git a/altosui/altos-windows.nsi.in b/altosui/altos-windows.nsi.in index c85e2ac8..e96250d7 100644 --- a/altosui/altos-windows.nsi.in +++ b/altosui/altos-windows.nsi.in @@ -124,6 +124,7 @@ Section "Firmware"  	File "../src/telemetrum-v1.1/telemetrum-v1.1-${VERSION}.ihx"  	File "../src/telemetrum-v1.2/telemetrum-v1.2-${VERSION}.ihx"  	File "../src/telemetrum-v2.0/telemetrum-v2.0-${VERSION}.ihx" +;	File "../src/telemetrum-v3.0/telemetrum-v3.0-${VERSION}.ihx"  	File "../src/telemini-v1.0/telemini-v1.0-${VERSION}.ihx"  	File "../src/telegps-v1.0/telegps-v1.0-${VERSION}.ihx"  	File "../src/teledongle-v0.2/teledongle-v0.2-${VERSION}.ihx" diff --git a/altosuilib/AltosBTDevice.java b/altosuilib/AltosBTDevice.java index df00bcee..313cf0a0 100644 --- a/altosuilib/AltosBTDevice.java +++ b/altosuilib/AltosBTDevice.java @@ -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 diff --git a/altosuilib/AltosBTDeviceIterator.java b/altosuilib/AltosBTDeviceIterator.java index 75ca18ed..1ea31950 100644 --- a/altosuilib/AltosBTDeviceIterator.java +++ b/altosuilib/AltosBTDeviceIterator.java @@ -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 diff --git a/altosuilib/AltosBTKnown.java b/altosuilib/AltosBTKnown.java index 11b0d48d..32cc05d7 100644 --- a/altosuilib/AltosBTKnown.java +++ b/altosuilib/AltosBTKnown.java @@ -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 diff --git a/altosuilib/AltosBTManage.java b/altosuilib/AltosBTManage.java index bdb35d49..14e0a056 100644 --- a/altosuilib/AltosBTManage.java +++ b/altosuilib/AltosBTManage.java @@ -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 diff --git a/altosuilib/AltosCSVUI.java b/altosuilib/AltosCSVUI.java index 9d67ce8d..1b769740 100644 --- a/altosuilib/AltosCSVUI.java +++ b/altosuilib/AltosCSVUI.java @@ -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 diff --git a/altosuilib/AltosConfigFreqUI.java b/altosuilib/AltosConfigFreqUI.java index b8477ecd..c4d2abba 100644 --- a/altosuilib/AltosConfigFreqUI.java +++ b/altosuilib/AltosConfigFreqUI.java @@ -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 diff --git a/altosuilib/AltosDataChooser.java b/altosuilib/AltosDataChooser.java index f1a5610e..8758fc34 100644 --- a/altosuilib/AltosDataChooser.java +++ b/altosuilib/AltosDataChooser.java @@ -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 diff --git a/altosuilib/AltosDevice.java b/altosuilib/AltosDevice.java index f51c76c2..f9878fe9 100644 --- a/altosuilib/AltosDevice.java +++ b/altosuilib/AltosDevice.java @@ -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 diff --git a/altosuilib/AltosDeviceDialog.java b/altosuilib/AltosDeviceDialog.java index 0cd658c0..5d8ff570 100644 --- a/altosuilib/AltosDeviceDialog.java +++ b/altosuilib/AltosDeviceDialog.java @@ -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 diff --git a/altosuilib/AltosDeviceUIDialog.java b/altosuilib/AltosDeviceUIDialog.java index 7d1e3618..c2d6f4f3 100644 --- a/altosuilib/AltosDeviceUIDialog.java +++ b/altosuilib/AltosDeviceUIDialog.java @@ -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 diff --git a/altosuilib/AltosDisplayThread.java b/altosuilib/AltosDisplayThread.java index ba48ab82..52414c62 100644 --- a/altosuilib/AltosDisplayThread.java +++ b/altosuilib/AltosDisplayThread.java @@ -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 diff --git a/altosuilib/AltosEepromDelete.java b/altosuilib/AltosEepromDelete.java index 026b5da4..24337be4 100644 --- a/altosuilib/AltosEepromDelete.java +++ b/altosuilib/AltosEepromDelete.java @@ -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 diff --git a/altosuilib/AltosEepromManage.java b/altosuilib/AltosEepromManage.java index a4b62ff0..a6636c4f 100644 --- a/altosuilib/AltosEepromManage.java +++ b/altosuilib/AltosEepromManage.java @@ -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 diff --git a/altosuilib/AltosEepromMonitor.java b/altosuilib/AltosEepromMonitor.java index 7fe5be18..d61169f4 100644 --- a/altosuilib/AltosEepromMonitor.java +++ b/altosuilib/AltosEepromMonitor.java @@ -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 diff --git a/altosuilib/AltosEepromMonitorUI.java b/altosuilib/AltosEepromMonitorUI.java index 9492bc31..d708ae96 100644 --- a/altosuilib/AltosEepromMonitorUI.java +++ b/altosuilib/AltosEepromMonitorUI.java @@ -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 diff --git a/altosuilib/AltosEepromSelect.java b/altosuilib/AltosEepromSelect.java index 28b3982b..0b4b7a85 100644 --- a/altosuilib/AltosEepromSelect.java +++ b/altosuilib/AltosEepromSelect.java @@ -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 diff --git a/altosuilib/AltosFlashUI.java b/altosuilib/AltosFlashUI.java index 6574bd99..da36397a 100644 --- a/altosuilib/AltosFlashUI.java +++ b/altosuilib/AltosFlashUI.java @@ -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 diff --git a/altosuilib/AltosFlightInfoTableModel.java b/altosuilib/AltosFlightInfoTableModel.java index ca3728a5..2d371101 100644 --- a/altosuilib/AltosFlightInfoTableModel.java +++ b/altosuilib/AltosFlightInfoTableModel.java @@ -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 diff --git a/altosuilib/AltosFlightStatsTable.java b/altosuilib/AltosFlightStatsTable.java index c0f1ecb6..2f46f231 100644 --- a/altosuilib/AltosFlightStatsTable.java +++ b/altosuilib/AltosFlightStatsTable.java @@ -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 diff --git a/altosuilib/AltosGraph.java b/altosuilib/AltosGraph.java index ad843f7f..23fa1ffe 100644 --- a/altosuilib/AltosGraph.java +++ b/altosuilib/AltosGraph.java @@ -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 diff --git a/altosuilib/AltosGraphDataPoint.java b/altosuilib/AltosGraphDataPoint.java index fcb88388..0012d96a 100644 --- a/altosuilib/AltosGraphDataPoint.java +++ b/altosuilib/AltosGraphDataPoint.java @@ -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 diff --git a/altosuilib/AltosGraphDataSet.java b/altosuilib/AltosGraphDataSet.java index 3e3bf479..065a7815 100644 --- a/altosuilib/AltosGraphDataSet.java +++ b/altosuilib/AltosGraphDataSet.java @@ -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 diff --git a/altosuilib/AltosInfoTable.java b/altosuilib/AltosInfoTable.java index 3509f65d..7ede2824 100644 --- a/altosuilib/AltosInfoTable.java +++ b/altosuilib/AltosInfoTable.java @@ -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 diff --git a/altosuilib/AltosLed.java b/altosuilib/AltosLed.java index b1dc3220..c06e45e5 100644 --- a/altosuilib/AltosLed.java +++ b/altosuilib/AltosLed.java @@ -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 diff --git a/altosuilib/AltosLights.java b/altosuilib/AltosLights.java index 34293bb4..394cfc67 100644 --- a/altosuilib/AltosLights.java +++ b/altosuilib/AltosLights.java @@ -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 diff --git a/altosuilib/AltosPositionListener.java b/altosuilib/AltosPositionListener.java index 8eb4594a..8c4d2516 100644 --- a/altosuilib/AltosPositionListener.java +++ b/altosuilib/AltosPositionListener.java @@ -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 diff --git a/altosuilib/AltosRomconfigUI.java b/altosuilib/AltosRomconfigUI.java index 33686b4f..c1b8ac26 100644 --- a/altosuilib/AltosRomconfigUI.java +++ b/altosuilib/AltosRomconfigUI.java @@ -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 diff --git a/altosuilib/AltosScanUI.java b/altosuilib/AltosScanUI.java index ee68fbc9..8843429a 100644 --- a/altosuilib/AltosScanUI.java +++ b/altosuilib/AltosScanUI.java @@ -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 diff --git a/altosuilib/AltosSerial.java b/altosuilib/AltosSerial.java index 1bf4dbbe..5c32a7d8 100644 --- a/altosuilib/AltosSerial.java +++ b/altosuilib/AltosSerial.java @@ -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 diff --git a/altosuilib/AltosSerialInUseException.java b/altosuilib/AltosSerialInUseException.java index cba5cac0..e0de8ad7 100644 --- a/altosuilib/AltosSerialInUseException.java +++ b/altosuilib/AltosSerialInUseException.java @@ -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 diff --git a/altosuilib/AltosUIAxis.java b/altosuilib/AltosUIAxis.java index 8ec8a114..e41667ef 100644 --- a/altosuilib/AltosUIAxis.java +++ b/altosuilib/AltosUIAxis.java @@ -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 diff --git a/altosuilib/AltosUIConfigure.java b/altosuilib/AltosUIConfigure.java index de070473..19512f49 100644 --- a/altosuilib/AltosUIConfigure.java +++ b/altosuilib/AltosUIConfigure.java @@ -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 diff --git a/altosuilib/AltosUIDataMissing.java b/altosuilib/AltosUIDataMissing.java index 44668dff..a59cc0a0 100644 --- a/altosuilib/AltosUIDataMissing.java +++ b/altosuilib/AltosUIDataMissing.java @@ -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 diff --git a/altosuilib/AltosUIDataPoint.java b/altosuilib/AltosUIDataPoint.java index 7d905b46..4107feae 100644 --- a/altosuilib/AltosUIDataPoint.java +++ b/altosuilib/AltosUIDataPoint.java @@ -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 diff --git a/altosuilib/AltosUIDataSet.java b/altosuilib/AltosUIDataSet.java index 8c7bcf03..ffab46c1 100644 --- a/altosuilib/AltosUIDataSet.java +++ b/altosuilib/AltosUIDataSet.java @@ -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 diff --git a/altosuilib/AltosUIDialog.java b/altosuilib/AltosUIDialog.java index 2fd46498..85b40229 100644 --- a/altosuilib/AltosUIDialog.java +++ b/altosuilib/AltosUIDialog.java @@ -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 diff --git a/altosuilib/AltosUIEnable.java b/altosuilib/AltosUIEnable.java index 74de4bf5..4c733b96 100644 --- a/altosuilib/AltosUIEnable.java +++ b/altosuilib/AltosUIEnable.java @@ -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 diff --git a/altosuilib/AltosUIFlightTab.java b/altosuilib/AltosUIFlightTab.java index 1e324450..3adbdb33 100644 --- a/altosuilib/AltosUIFlightTab.java +++ b/altosuilib/AltosUIFlightTab.java @@ -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 diff --git a/altosuilib/AltosUIFrame.java b/altosuilib/AltosUIFrame.java index ac440190..e5007fff 100644 --- a/altosuilib/AltosUIFrame.java +++ b/altosuilib/AltosUIFrame.java @@ -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 diff --git a/altosuilib/AltosUIFreqList.java b/altosuilib/AltosUIFreqList.java index c770f654..4dd9fece 100644 --- a/altosuilib/AltosUIFreqList.java +++ b/altosuilib/AltosUIFreqList.java @@ -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 diff --git a/altosuilib/AltosUIGraph.java b/altosuilib/AltosUIGraph.java index 9c257763..d3760384 100644 --- a/altosuilib/AltosUIGraph.java +++ b/altosuilib/AltosUIGraph.java @@ -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 diff --git a/altosuilib/AltosUIGrapher.java b/altosuilib/AltosUIGrapher.java index 1acf5c46..07358144 100644 --- a/altosuilib/AltosUIGrapher.java +++ b/altosuilib/AltosUIGrapher.java @@ -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 diff --git a/altosuilib/AltosUIImage.java b/altosuilib/AltosUIImage.java index 700e095f..b157a2ce 100644 --- a/altosuilib/AltosUIImage.java +++ b/altosuilib/AltosUIImage.java @@ -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 diff --git a/altosuilib/AltosUIIndicator.java b/altosuilib/AltosUIIndicator.java index a91a7e66..f47a2f29 100644 --- a/altosuilib/AltosUIIndicator.java +++ b/altosuilib/AltosUIIndicator.java @@ -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 diff --git a/altosuilib/AltosUILib.java b/altosuilib/AltosUILib.java index 5eefdc98..0c5fa1c7 100644 --- a/altosuilib/AltosUILib.java +++ b/altosuilib/AltosUILib.java @@ -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 diff --git a/altosuilib/AltosUIListener.java b/altosuilib/AltosUIListener.java index 581711ad..55ce584a 100644 --- a/altosuilib/AltosUIListener.java +++ b/altosuilib/AltosUIListener.java @@ -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 diff --git a/altosuilib/AltosUIMap.java b/altosuilib/AltosUIMap.java index 8c90bcd8..3e4cbe9b 100644 --- a/altosuilib/AltosUIMap.java +++ b/altosuilib/AltosUIMap.java @@ -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 diff --git a/altosuilib/AltosUIMapPreload.java b/altosuilib/AltosUIMapPreload.java index 32690037..06c4c59b 100644 --- a/altosuilib/AltosUIMapPreload.java +++ b/altosuilib/AltosUIMapPreload.java @@ -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 diff --git a/altosuilib/AltosUIMarker.java b/altosuilib/AltosUIMarker.java index 84130562..9d8dde60 100644 --- a/altosuilib/AltosUIMarker.java +++ b/altosuilib/AltosUIMarker.java @@ -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 diff --git a/altosuilib/AltosUIPreferences.java b/altosuilib/AltosUIPreferences.java index 84172711..c8ae9a7d 100644 --- a/altosuilib/AltosUIPreferences.java +++ b/altosuilib/AltosUIPreferences.java @@ -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 diff --git a/altosuilib/AltosUIPreferencesBackend.java b/altosuilib/AltosUIPreferencesBackend.java index 3d212dc5..6dd2baaf 100644 --- a/altosuilib/AltosUIPreferencesBackend.java +++ b/altosuilib/AltosUIPreferencesBackend.java @@ -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 diff --git a/altosuilib/AltosUIRateList.java b/altosuilib/AltosUIRateList.java index 8919804e..187977d3 100644 --- a/altosuilib/AltosUIRateList.java +++ b/altosuilib/AltosUIRateList.java @@ -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 diff --git a/altosuilib/AltosUISeries.java b/altosuilib/AltosUISeries.java index 3a1dde03..66cc7d69 100644 --- a/altosuilib/AltosUISeries.java +++ b/altosuilib/AltosUISeries.java @@ -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 diff --git a/altosuilib/AltosUITelemetryList.java b/altosuilib/AltosUITelemetryList.java index a2599acd..f02d2f7f 100644 --- a/altosuilib/AltosUITelemetryList.java +++ b/altosuilib/AltosUITelemetryList.java @@ -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 diff --git a/altosuilib/AltosUIUnitsIndicator.java b/altosuilib/AltosUIUnitsIndicator.java index 63af5725..d4dd18db 100644 --- a/altosuilib/AltosUIUnitsIndicator.java +++ b/altosuilib/AltosUIUnitsIndicator.java @@ -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 @@ -82,6 +83,7 @@ public abstract class AltosUIUnitsIndicator extends AltosUIIndicator {  	public void show (AltosState state, AltosListenerState listener_state) {  		double[] v = new double[values.length]; +		hide = false;  		for (int i = 0; i < values.length; i++) {  			if (state != null)  				v[i] = value(state, listener_state, i); diff --git a/altosuilib/AltosUIVoltageIndicator.java b/altosuilib/AltosUIVoltageIndicator.java index 852b594d..299c6114 100644 --- a/altosuilib/AltosUIVoltageIndicator.java +++ b/altosuilib/AltosUIVoltageIndicator.java @@ -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 diff --git a/altosuilib/AltosUSBDevice.java b/altosuilib/AltosUSBDevice.java index ea4f9f3c..221ac829 100644 --- a/altosuilib/AltosUSBDevice.java +++ b/altosuilib/AltosUSBDevice.java @@ -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 diff --git a/altosuilib/AltosVoice.java b/altosuilib/AltosVoice.java index 33a06a4e..c651aa35 100644 --- a/altosuilib/AltosVoice.java +++ b/altosuilib/AltosVoice.java @@ -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 diff --git a/altosuilib/GrabNDrag.java b/altosuilib/GrabNDrag.java index 804425a3..0e57fe4d 100644 --- a/altosuilib/GrabNDrag.java +++ b/altosuilib/GrabNDrag.java @@ -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 diff --git a/ao-bringup/ao_bringup.h b/ao-bringup/ao_bringup.h index 99fa4fba..23a1d607 100644 --- a/ao-bringup/ao_bringup.h +++ b/ao-bringup/ao_bringup.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 diff --git a/ao-bringup/ao_init.c b/ao-bringup/ao_init.c index 5dababde..e30608ab 100644 --- a/ao-bringup/ao_init.c +++ b/ao-bringup/ao_init.c @@ -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 diff --git a/ao-bringup/ao_led_blink.c b/ao-bringup/ao_led_blink.c index 1e4c143d..b53b971d 100644 --- a/ao-bringup/ao_led_blink.c +++ b/ao-bringup/ao_led_blink.c @@ -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 diff --git a/ao-bringup/ao_radio_init.c b/ao-bringup/ao_radio_init.c index 11932506..fe8dd90b 100644 --- a/ao-bringup/ao_radio_init.c +++ b/ao-bringup/ao_radio_init.c @@ -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 diff --git a/ao-bringup/ao_radio_test.c b/ao-bringup/ao_radio_test.c index 8efb03cc..de140213 100644 --- a/ao-bringup/ao_radio_test.c +++ b/ao-bringup/ao_radio_test.c @@ -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 diff --git a/ao-bringup/ao_radio_xmit.c b/ao-bringup/ao_radio_xmit.c index be3333af..bca83ae8 100644 --- a/ao-bringup/ao_radio_xmit.c +++ b/ao-bringup/ao_radio_xmit.c @@ -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 diff --git a/ao-bringup/test-chaoskey b/ao-bringup/test-chaoskey new file mode 100755 index 00000000..b4c8164f --- /dev/null +++ b/ao-bringup/test-chaoskey @@ -0,0 +1,95 @@ +#!/bin/bash +snum="unknown" +case "$#" in +    1) +	case "$1" in +	    "-?"|"--help") +		echo "Usage: $0 [serial]" +		exit 0 +		;; +	esac +	snum="$1" +	serial="--serial $1" +	;; +    0) +	snum=`dmesg | grep 'on chaoskey' | tail -1 | sed 's/.*chaoskey \([0-9a-f][0-9a-f]*\) on chaoskey.*/\1/'` +	case "$snum" in +	    "") +		serial="" +		;; +	    *) +		serial="--serial $snum" +		;; +	esac +	;; +    *) +	echo "Usage: $0 [serial]" +	exit 1 +	;; +esac + +echo -e '\e[34mTesting ChaosKey' $snum '\e[39m' + +tests="0:100 1:100 2:100 3:100 12:10 13:100 15:10000 16:250 202:1000 203:100 204:500 206:20 207:1000:32 209:1000" + +PASS=0 +FAIL=0 +WEAK=0 +../ao-tools/ao-chaosread/ao-chaosread $serial --infinite --bytes | for test in $tests done; do +    case $test in +	*:*:*) +	    dnum=`echo $test | sed 's/:.*$//'` +	    tnum=`echo $test | sed 's/^[^:]*://'` +	    tnum=`echo $test | sed 's/^[^:]*://' | sed 's/:.*$//'` +	    nnum=`echo $test | sed 's/^.*://'` +	    opts="-d $dnum -t $tnum -n $nnum" +	    ;; +	*:*) +	    dnum=`echo $test | sed 's/:.*$//'` +	    tnum=`echo $test | sed 's/^.*://'` +	    opts="-d $dnum -t $tnum" +	    ;; +	*) +	    dnum=$test +	    opts="-d $dnum" +	    ;; +    esac +    case $dnum in +    done) +	echo DONE +	;; +    *) +	echo TEST $dnum +	dieharder -g 200 $opts +	;; +    esac +done | while read result; do +    case "$result" in +	TEST*) +	    testnum=`echo $result | sed 's/TEST //'` +	    ;; +	*PASSED*) +	    PASS=`expr $PASS + 1` +	    ;; +	*WEAK*) +	    WEAK=`expr $WEAK + 1` +	    ;; +	*FAILED*) +	    echo test $testnum failed +	    FAIL=`expr $FAIL + 1` +	    ;; +	DONE) +	    echo pass $PASS weak $WEAK fail $FAIL +	    case $PASS:$FAIL in +		[1-9]*:0) +		    echo -e '\e[32m'ChaosKey $snum is ready to ship'\e[39m' +		    exit 0 +		    ;; +		*) +		    echo -e '\e[31m'ChaosKey $snum failed'\e[39m' +		    exit 1 +		    ;; +	    esac +	    ;; +    esac +done diff --git a/ao-bringup/turnon_chaoskey b/ao-bringup/turnon_chaoskey index 8c20ebaa..990382f4 100755 --- a/ao-bringup/turnon_chaoskey +++ b/ao-bringup/turnon_chaoskey @@ -24,10 +24,17 @@ echo "Expectations:"  echo "\tChaosKey v$VERSION powered from USB"  echo -$DFU_UTIL -a 0 -s 0x08000000:leave -D ../src/chaoskey-v$VERSION/flash-loader/chaoskey-v$VERSION*.bin || exit 1 +FLASH_FILE=~/altusmetrumllc/Binaries/loaders/chaoskey-v1.0-altos-flash-*.bin +ALTOS_FILE=~/altusmetrumllc/Binaries/chaoskey-v1.0-*.elf + +$DFU_UTIL -a 0 -s 0x08000000:leave -D $FLASH_FILE || exit 1  sleep 2 -$USBLOAD --serial=1 ../src/chaoskey-v$VERSION/chaoskey-v$VERSION*.ihx || exit 1 +$USBLOAD --serial=1 $ALTOS_FILE || exit 1 + +sleep 1 + +./test-chaoskey  exit $? diff --git a/ao-bringup/turnon_telemega b/ao-bringup/turnon_telemega index 62f51fba..e2b539e1 100755 --- a/ao-bringup/turnon_telemega +++ b/ao-bringup/turnon_telemega @@ -16,17 +16,31 @@ fi  VERSION=2.0  REPO=~/altusmetrumllc/Binaries +PRODUCT=TeleMega -echo "TeleMega v$VERSION Turn-On and Calibration Program" +echo "$PRODUCT v$VERSION Turn-On and Calibration Program"  echo "Copyright 2014 by Bdale Garbee.  Released under GPL v2"  echo  echo "Expectations:" -echo "\tTeleMega v$VERSION powered from USB" +echo "\t$PRODUCT v$VERSION powered from USB"  echo "\t\twith ST-Link-V2 cabled to debug header"  echo "\t\twith coax from UHF to frequency counter"  echo -echo -n "TeleMega-$VERSION serial number: " -read SERIAL + +case $# in +    1) +	SERIAL="$1" +	echo "$PRODUCT-$VERSION serial number: $SERIAL"  +	;; +    0) +	echo -n "$PRODUCT-$VERSION serial number: " +	read SERIAL +	;; +    *) +	echo "Usage: $0 <serial-number>" 1>&2 +	exit 1; +	;; +esac  echo $FLASH_STM @@ -54,7 +68,11 @@ echo 'E 0' > $dev  SERIAL=$SERIAL ./cal-freq $dev -../ao-tools/ao-cal-accel/ao-cal-accel $dev +failed=1 +while [ $failed = 1 ]; do +    ../ao-tools/ao-cal-accel/ao-cal-accel $dev +    failed=$? +done  echo 'E 1' > $dev diff --git a/ao-bringup/turnon_telemetrum b/ao-bringup/turnon_telemetrum index ba40a08a..5c62c49d 100755 --- a/ao-bringup/turnon_telemetrum +++ b/ao-bringup/turnon_telemetrum @@ -15,17 +15,32 @@ else  fi  VERSION=2.0 +PRODUCT=TeleMetrum -echo "TeleMetrum v$VERSION Turn-On and Calibration Program" +echo "$PRODUCT v$VERSION Turn-On and Calibration Program"  echo "Copyright 2014 by Bdale Garbee.  Released under GPL v2"  echo  echo "Expectations:" -echo "\tTeleMetrum v$VERSION powered from USB" +echo "\t$PRODUCT v$VERSION powered from USB"  echo "\t\twith ST-Link-V2 cabled to debug header"  echo "\t\twith coax from UHF to frequency counter"  echo -echo -n "TeleMetrum-$VERSION serial number: " -read SERIAL +echo -n "$PRODUCT-$VERSION serial number: " + +case $# in +    1) +	SERIAL="$1" +	echo "$PRODUCT-$VERSION serial number: $SERIAL"  +	;; +    0) +	echo -n "$PRODUCT-$VERSION serial number: " +	read SERIAL +	;; +    *) +	echo "Usage: $0 <serial-number>" 1>&2 +	exit 1; +	;; +esac  echo $FLASH_STM @@ -53,7 +68,11 @@ echo 'E 0' > $dev  SERIAL=$SERIAL ./cal-freq $dev -../ao-tools/ao-cal-accel/ao-cal-accel $dev +failed=1 +while [ $failed = 1 ]; do +    ../ao-tools/ao-cal-accel/ao-cal-accel $dev +    failed=$? +done  echo 'E 1' > $dev diff --git a/ao-tools/ao-cal-accel/ao-cal-accel.c b/ao-tools/ao-cal-accel/ao-cal-accel.c index 9a988648..8a9e6347 100644 --- a/ao-tools/ao-cal-accel/ao-cal-accel.c +++ b/ao-tools/ao-cal-accel/ao-cal-accel.c @@ -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 diff --git a/ao-tools/ao-cal-freq/ao-cal-freq.c b/ao-tools/ao-cal-freq/ao-cal-freq.c index 464faf0f..12c2a3ae 100644 --- a/ao-tools/ao-cal-freq/ao-cal-freq.c +++ b/ao-tools/ao-cal-freq/ao-cal-freq.c @@ -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 @@ -38,13 +39,13 @@ static const struct option options[] = {  	{ .name = "tty", .has_arg = 1, .val = 'T' },  	{ .name = "device", .has_arg = 1, .val = 'D' },  	{ .name = "raw", .has_arg = 0, .val = 'r' }, -	{ .name = "verbose", .has_arg = 1, .val = 'v' }, +	{ .name = "verbose", .has_arg = 0, .val = 'v' },  	{ 0, 0, 0, 0},  };  static void usage(char *program)  { -	fprintf(stderr, "usage: %s [--verbose=<verbose>] [--device=<device>] [-tty=<tty>]\n", program); +	fprintf(stderr, "usage: %s [--verbose] [--device=<device>] [-tty=<tty>]\n", program);  	exit(1);  } @@ -167,7 +168,8 @@ await_key(void)  }  int -do_cal(struct cc_usb *usb) { +do_cal(char *tty) { +	struct cc_usb *usb = NULL;  	struct flash	*b;  	char	line[1024];  	double	measured_freq; @@ -177,10 +179,17 @@ do_cal(struct cc_usb *usb) {  	int	cur_freq;  	int	cur_cal;  	int	new_cal; - -	cc_usb_printf(usb, "E 0\n"); +	int	ret = 1;  	for(;;) { +		usb = cc_usb_open(tty); + +		if (!usb) +			exit(1); + +		cc_usb_printf(usb, "E 0\n"); + +		cc_usb_sync(usb);  		cc_usb_printf(usb, "C 1\n");  		cc_usb_sync(usb); @@ -201,7 +210,8 @@ do_cal(struct cc_usb *usb) {  		if (!cur_cal_words || !cur_freq_words) {  			printf("no response\n"); -			return 0; +			ret = 0; +			break;  		}  		cur_cal = atoi(cur_cal_words[2]); @@ -217,8 +227,11 @@ do_cal(struct cc_usb *usb) {  		cc_usb_printf (usb, "c f %d\nc w\n", new_cal);  		cc_usb_sync(usb); +		cc_usb_close(usb);  	} -	return 1; +	if (usb) +		cc_usb_close(usb); +	return ret;  }  int @@ -231,14 +244,13 @@ main (int argc, char **argv)  	int			i;  	int			c;  	int			tries; -	struct cc_usb		*cc = NULL;  	char			*tty = NULL;  	int			success;  	int			verbose = 0;  	int			ret = 0;  	int			expected_size; -	while ((c = getopt_long(argc, argv, "rT:D:c:s:v:", options, NULL)) != -1) { +	while ((c = getopt_long(argc, argv, "vrT:D:c:s:", options, NULL)) != -1) {  		switch (c) {  		case 'T':  			tty = optarg; @@ -269,12 +281,6 @@ main (int argc, char **argv)  	if (!tty)  		tty="/dev/ttyACM0"; -	cc = cc_usb_open(tty); - -	if (!cc) -		exit(1); - -	if (!do_cal(cc)) +	if (!do_cal(tty))  		ret = 1; -	done(cc, ret);  } diff --git a/ao-tools/ao-chaosread/ao-chaosread.c b/ao-tools/ao-chaosread/ao-chaosread.c index 806c2ef9..7808f6c9 100644 --- a/ao-tools/ao-chaosread/ao-chaosread.c +++ b/ao-tools/ao-chaosread/ao-chaosread.c @@ -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 @@ -90,7 +91,6 @@ chaoskey_match(libusb_device *dev, char *match_serial)  	return handle;  out: -	free(device_serial);  	if (handle)  		libusb_close(handle);  	return 0; @@ -182,15 +182,16 @@ chaoskey_transfer_callback(struct libusb_transfer *transfer)  #define ENDPOINT	0x86  int -chaoskey_read(struct chaoskey *ck, uint8_t *buffer, int len) +chaoskey_read(struct chaoskey *ck, void *buffer, int len)  { +	uint8_t	*buf = buffer;  	int	total = 0;  	while (len) {  		int	ret;  		int	transferred; -		ret = libusb_bulk_transfer(ck->handle, ENDPOINT, buffer, len, &transferred, 10000); +		ret = libusb_bulk_transfer(ck->handle, ENDPOINT, buf, len, &transferred, 10000);  		if (ret) {  			if (total)  				return total; @@ -200,19 +201,21 @@ chaoskey_read(struct chaoskey *ck, uint8_t *buffer, int len)  			}  		}  		len -= transferred; -		buffer += transferred; +		buf += transferred;  	}  }  static const struct option options[] = {  	{ .name = "serial", .has_arg = 1, .val = 's' },  	{ .name = "length", .has_arg = 1, .val = 'l' }, +	{ .name = "infinite", .has_arg = 0, .val = 'i' }, +	{ .name = "bytes", .has_arg = 0, .val = 'b' },  	{ 0, 0, 0, 0},  };  static void usage(char *program)  { -	fprintf(stderr, "usage: %s [--serial=<serial>] [--length=<length>[kMG]]\n", program); +	fprintf(stderr, "usage: %s [--serial=<serial>] [--length=<length>[kMG]] [--infinite] [--bytes]\n", program);  	exit(1);  } @@ -220,16 +223,18 @@ int  main (int argc, char **argv)  {  	struct chaoskey	*ck; -	char	buf[1024]; +	uint16_t	buf[512];  	int	got;  	int	c;  	char	*serial = NULL;  	char	*length_string;  	char	*length_end;  	unsigned long	length = sizeof(buf); -	int		this_time; +	int	this_time; +	int	infinite = 0; +	int	bytes = 0; -	while ((c = getopt_long(argc, argv, "s:l:", options, NULL)) != -1) { +	while ((c = getopt_long(argc, argv, "s:l:ib", options, NULL)) != -1) {  		switch (c) {  		case 's':  			serial = optarg; @@ -246,6 +251,12 @@ main (int argc, char **argv)  			else if (strlen(length_end))  				 usage(argv[0]);  			break; +		case 'i': +			infinite = 1; +			break; +		case 'b': +			bytes = 1; +			break;  		default:  			usage(argv[0]);  			break; @@ -256,16 +267,24 @@ main (int argc, char **argv)  	if (!ck)  		exit(1); -	while (length) { +	if (bytes) +		length *= 2; + +	while (length || infinite) {  		this_time = sizeof(buf); -		if (length < sizeof(buf)) +		if (!infinite && length < sizeof(buf))  			this_time = (int) length;  		got = chaoskey_read(ck, buf, this_time);  		if (got < 0) {  			perror("read");  			exit(1);  		} -		write(1, buf, got); +		if (bytes) { +			int i; +			for (i = 0; i < got / 2; i++) +				putchar((buf[i] >> 1 & 0xff)); +		} else +			write(1, buf, got);  		length -= got;  	}  	exit(0); diff --git a/ao-tools/ao-edit-telem/ao-edit-telem.c b/ao-tools/ao-edit-telem/ao-edit-telem.c index 3f6830e7..e2795ede 100644 --- a/ao-tools/ao-edit-telem/ao-edit-telem.c +++ b/ao-tools/ao-edit-telem/ao-edit-telem.c @@ -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 diff --git a/ao-tools/ao-elftohex/ao-elftohex.c b/ao-tools/ao-elftohex/ao-elftohex.c index db8f86f1..265908c5 100644 --- a/ao-tools/ao-elftohex/ao-elftohex.c +++ b/ao-tools/ao-elftohex/ao-elftohex.c @@ -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 diff --git a/ao-tools/ao-list/ao-list.c b/ao-tools/ao-list/ao-list.c index 4c065e79..0a970070 100644 --- a/ao-tools/ao-list/ao-list.c +++ b/ao-tools/ao-list/ao-list.c @@ -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 diff --git a/ao-tools/ao-makebin/ao-makebin.c b/ao-tools/ao-makebin/ao-makebin.c index 31ce1889..e33f2d1a 100644 --- a/ao-tools/ao-makebin/ao-makebin.c +++ b/ao-tools/ao-makebin/ao-makebin.c @@ -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 diff --git a/ao-tools/ao-mega/ao-mega.c b/ao-tools/ao-mega/ao-mega.c index cfb58bb4..9a12609b 100644 --- a/ao-tools/ao-mega/ao-mega.c +++ b/ao-tools/ao-mega/ao-mega.c @@ -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 diff --git a/ao-tools/ao-send-telem/ao-send-telem.c b/ao-tools/ao-send-telem/ao-send-telem.c index ef6f892c..a4fc85b7 100644 --- a/ao-tools/ao-send-telem/ao-send-telem.c +++ b/ao-tools/ao-send-telem/ao-send-telem.c @@ -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 diff --git a/ao-tools/ao-sky-flash/sky_bin.c b/ao-tools/ao-sky-flash/sky_bin.c index 04cfec35..d728d0c2 100644 --- a/ao-tools/ao-sky-flash/sky_bin.c +++ b/ao-tools/ao-sky-flash/sky_bin.c @@ -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 diff --git a/ao-tools/ao-sky-flash/sky_debug.c b/ao-tools/ao-sky-flash/sky_debug.c index 32571f0e..40151939 100644 --- a/ao-tools/ao-sky-flash/sky_debug.c +++ b/ao-tools/ao-sky-flash/sky_debug.c @@ -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 diff --git a/ao-tools/ao-sky-flash/sky_flash.c b/ao-tools/ao-sky-flash/sky_flash.c index 55cb2cb6..7dbb6954 100644 --- a/ao-tools/ao-sky-flash/sky_flash.c +++ b/ao-tools/ao-sky-flash/sky_flash.c @@ -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 diff --git a/ao-tools/ao-sky-flash/sky_flash.h b/ao-tools/ao-sky-flash/sky_flash.h index 77f4c742..6dcbbf72 100644 --- a/ao-tools/ao-sky-flash/sky_flash.h +++ b/ao-tools/ao-sky-flash/sky_flash.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 diff --git a/ao-tools/ao-sky-flash/sky_serial.c b/ao-tools/ao-sky-flash/sky_serial.c index 7230bf8c..94b0b156 100644 --- a/ao-tools/ao-sky-flash/sky_serial.c +++ b/ao-tools/ao-sky-flash/sky_serial.c @@ -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 diff --git a/ao-tools/ao-sky-flash/sky_srec.c b/ao-tools/ao-sky-flash/sky_srec.c index 6d00f58c..7acdc55c 100644 --- a/ao-tools/ao-sky-flash/sky_srec.c +++ b/ao-tools/ao-sky-flash/sky_srec.c @@ -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 diff --git a/ao-tools/ao-stmload/ao-stmload.c b/ao-tools/ao-stmload/ao-stmload.c index 4210a111..18fa94ff 100644 --- a/ao-tools/ao-stmload/ao-stmload.c +++ b/ao-tools/ao-stmload/ao-stmload.c @@ -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 diff --git a/ao-tools/ao-stmload/ao-stmload.h b/ao-tools/ao-stmload/ao-stmload.h index 1ba9a977..bd59d66d 100644 --- a/ao-tools/ao-stmload/ao-stmload.h +++ b/ao-tools/ao-stmload/ao-stmload.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 diff --git a/ao-tools/ao-telem/ao-telem.c b/ao-tools/ao-telem/ao-telem.c index 05a69542..aa54a1b9 100644 --- a/ao-tools/ao-telem/ao-telem.c +++ b/ao-tools/ao-telem/ao-telem.c @@ -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 diff --git a/ao-tools/ao-test-baro/ao-test-baro.c b/ao-tools/ao-test-baro/ao-test-baro.c index b3058b80..d2b81e4f 100644 --- a/ao-tools/ao-test-baro/ao-test-baro.c +++ b/ao-tools/ao-test-baro/ao-test-baro.c @@ -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 diff --git a/ao-tools/ao-test-flash/ao-test-flash.c b/ao-tools/ao-test-flash/ao-test-flash.c index cf44ae69..5cbc56d7 100644 --- a/ao-tools/ao-test-flash/ao-test-flash.c +++ b/ao-tools/ao-test-flash/ao-test-flash.c @@ -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 diff --git a/ao-tools/ao-test-gps/ao-test-gps.c b/ao-tools/ao-test-gps/ao-test-gps.c index 84ed713d..5012028c 100644 --- a/ao-tools/ao-test-gps/ao-test-gps.c +++ b/ao-tools/ao-test-gps/ao-test-gps.c @@ -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 diff --git a/ao-tools/ao-test-igniter/ao-test-igniter.c b/ao-tools/ao-test-igniter/ao-test-igniter.c index 419c8948..c426e1bd 100644 --- a/ao-tools/ao-test-igniter/ao-test-igniter.c +++ b/ao-tools/ao-test-igniter/ao-test-igniter.c @@ -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 diff --git a/ao-tools/ao-usbload/ao-usbload.c b/ao-tools/ao-usbload/ao-usbload.c index 1b217e55..758eb696 100644 --- a/ao-tools/ao-usbload/ao-usbload.c +++ b/ao-tools/ao-usbload/ao-usbload.c @@ -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 @@ -40,7 +41,6 @@ get_uint16(struct cc_usb *cc, uint32_t addr)  {  	uint16_t	result;  	result = ao_self_get_uint16(cc, addr); -	printf ("read 0x%08x = 0x%04x\n", addr, result);  	return result;  } @@ -54,7 +54,6 @@ get_uint32(struct cc_usb *cc, uint32_t addr)  	uint32_t	result;  	result = ao_self_get_uint32(cc, addr); -	printf ("read 0x%08x = 0x%08x\n", addr, result);  	return result;  } @@ -87,12 +86,13 @@ static const struct option options[] = {  	{ .name = "serial", .has_arg = 1, .val = 's' },  	{ .name = "verbose", .has_arg = 1, .val = 'v' },  	{ .name = "wait", .has_arg = 0, .val = 'w' }, +	{ .name = "force", .has_arg = 0, .val = 'f' },  	{ 0, 0, 0, 0},  };  static void usage(char *program)  { -	fprintf(stderr, "usage: %s [--raw] [--verbose=<verbose>] [--device=<device>] [-tty=<tty>] [--cal=<radio-cal>] [--serial=<serial>] [--wait] file.{elf,ihx}\n", program); +	fprintf(stderr, "usage: %s [--raw] [--verbose=<verbose>] [--device=<device>] [-tty=<tty>] [--cal=<radio-cal>] [--serial=<serial>] [--wait] [--force] file.{elf,ihx}\n", program);  	exit(1);  } @@ -115,6 +115,48 @@ ends_with(char *whole, char *suffix)  	return strcmp(whole + whole_len - suffix_len, suffix) == 0;  } +static int +ucs2len(uint16_t *ucs2) +{ +	int	len = 0; +	while (*ucs2++) +		len++; +	return len; +} + +int +putucs4(uint32_t c, FILE *file) +{ +	char d; +	int	bits; + +	     if (c <       0x80) { d = c;                         bits= -6; } +	else if (c <      0x800) { d= ((c >>  6) & 0x1F) | 0xC0;  bits=  0; } +	else if (c <    0x10000) { d= ((c >> 12) & 0x0F) | 0xE0;  bits=  6; } +	else if (c <   0x200000) { d= ((c >> 18) & 0x07) | 0xF0;  bits= 12; } +	else if (c <  0x4000000) { d= ((c >> 24) & 0x03) | 0xF8;  bits= 18; } +	else if (c < 0x80000000) { d= ((c >> 30) & 0x01) | 0xFC;  bits= 24; } +	else return EOF; + +	if (putc (d, file) < 0) +		return EOF; + +	for ( ; bits >= 0; bits-= 6) +		if (putc (((c >> bits) & 0x3F) | 0x80, file) < 0) +			return EOF; + +	return 0; +} + +static void +putucs2str(uint16_t *ucs2str, FILE *file) +{ +	uint16_t	ucs2; + +	while ((ucs2 = *ucs2str++) != 0) +		putucs4(ucs2, file); +} +  int  main (int argc, char **argv)  { @@ -145,8 +187,9 @@ main (int argc, char **argv)  	int			num_file_symbols;  	uint32_t		flash_base, flash_bound;  	int			has_flash_size = 0; +	int			force = 0; -	while ((c = getopt_long(argc, argv, "wrT:D:c:s:v:", options, NULL)) != -1) { +	while ((c = getopt_long(argc, argv, "wrfT:D:c:s:v:", options, NULL)) != -1) {  		switch (c) {  		case 'T':  			tty = optarg; @@ -173,6 +216,9 @@ main (int argc, char **argv)  		case 'v':  			verbose++;  			break; +		case 'f': +			force = 1; +			break;  		default:  			usage(argv[0]);  			break; @@ -322,6 +368,48 @@ main (int argc, char **argv)  			}  		} +		if (!force && was_flashed) { +			struct ao_usb_id	new_id, old_id; +			uint16_t		*new_product, *old_product; +			int			new_len, old_len; + +			if (!ao_heximage_usb_id(load, &new_id)) { +				fprintf(stderr, "Can't get new USB id\n"); +				done(cc, 1); +			} + +			if (!ao_self_get_usb_id(cc, &old_id)) { +				fprintf(stderr, "Can't get old USB id\n"); +				done(cc, 1); +			} +			if (new_id.vid != old_id.vid || new_id.pid != old_id.pid) { +				fprintf(stderr, "USB ID mismatch (device is %04x/%04x image is %04x/%04x)\n", +					old_id.vid, old_id.pid, new_id.vid, new_id.pid); +				done(cc, 1); +			} + +			new_product = ao_heximage_usb_product(load); +			if (!new_product) { +				fprintf(stderr, "Can't get new USB product name\n"); +				done(cc, 1); +			} +			old_product = ao_self_get_usb_product(cc); +			if (!old_product) { +				fprintf(stderr, "Can't get existing USB product name\n"); +				done(cc, 1); +			} +			new_len = ucs2len(new_product); +			old_len = ucs2len(old_product); +			if (new_len != old_len || memcmp(new_product, old_product, new_len * 2) != 0) { +				fprintf(stderr, "USB product mismatch (device is "); +				putucs2str(new_product, stderr); +				fprintf(stderr, ", image is "); +				putucs2str(old_product, stderr); +				fprintf(stderr, ")\n"); +				done(cc, 1); +			} +		} +  		if (!ao_editaltos(load, serial, cal))  			done(cc, 1);  	} diff --git a/ao-tools/ao-usbload/ao-usbload.h b/ao-tools/ao-usbload/ao-usbload.h index 1ba9a977..bd59d66d 100644 --- a/ao-tools/ao-usbload/ao-usbload.h +++ b/ao-tools/ao-usbload/ao-usbload.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 diff --git a/ao-tools/ao-usbtrng/ao-usbtrng.c b/ao-tools/ao-usbtrng/ao-usbtrng.c index 456885d9..0362f1b4 100644 --- a/ao-tools/ao-usbtrng/ao-usbtrng.c +++ b/ao-tools/ao-usbtrng/ao-usbtrng.c @@ -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 diff --git a/ao-tools/ao-view/aoview.glade b/ao-tools/ao-view/aoview.glade index c302ad0d..2a3c1beb 100644 --- a/ao-tools/ao-view/aoview.glade +++ b/ao-tools/ao-view/aoview.glade @@ -729,7 +729,7 @@      <property name="copyright" translatable="yes">Copyright © 2009 Keith Packard</property>      <property name="comments" translatable="yes">AltOS data capture and display.</property>      <property name="website">http://altusmetrum.org</property> -    <property name="license" translatable="yes">AoView 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. +    <property name="license" translatable="yes">AoView 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; either version 2 of the License, or (at your option) any later version.  AoView is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details. diff --git a/ao-tools/ao-view/aoview.h b/ao-tools/ao-view/aoview.h index b937df7c..63359892 100644 --- a/ao-tools/ao-view/aoview.h +++ b/ao-tools/ao-view/aoview.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 diff --git a/ao-tools/ao-view/aoview_channel.c b/ao-tools/ao-view/aoview_channel.c index 959173ca..06d28214 100644 --- a/ao-tools/ao-view/aoview_channel.c +++ b/ao-tools/ao-view/aoview_channel.c @@ -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 diff --git a/ao-tools/ao-view/aoview_convert.c b/ao-tools/ao-view/aoview_convert.c index 8ee05e1d..e0c072e8 100644 --- a/ao-tools/ao-view/aoview_convert.c +++ b/ao-tools/ao-view/aoview_convert.c @@ -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 diff --git a/ao-tools/ao-view/aoview_dev_dialog.c b/ao-tools/ao-view/aoview_dev_dialog.c index 2ea43203..3c0a7c73 100644 --- a/ao-tools/ao-view/aoview_dev_dialog.c +++ b/ao-tools/ao-view/aoview_dev_dialog.c @@ -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 diff --git a/ao-tools/ao-view/aoview_eeprom.c b/ao-tools/ao-view/aoview_eeprom.c index 447b83a4..99da1a6b 100644 --- a/ao-tools/ao-view/aoview_eeprom.c +++ b/ao-tools/ao-view/aoview_eeprom.c @@ -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 diff --git a/ao-tools/ao-view/aoview_file.c b/ao-tools/ao-view/aoview_file.c index 292887a0..ade52263 100644 --- a/ao-tools/ao-view/aoview_file.c +++ b/ao-tools/ao-view/aoview_file.c @@ -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 diff --git a/ao-tools/ao-view/aoview_flite.c b/ao-tools/ao-view/aoview_flite.c index abcdc491..938bcb77 100644 --- a/ao-tools/ao-view/aoview_flite.c +++ b/ao-tools/ao-view/aoview_flite.c @@ -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 diff --git a/ao-tools/ao-view/aoview_label.c b/ao-tools/ao-view/aoview_label.c index 24313626..423d018f 100644 --- a/ao-tools/ao-view/aoview_label.c +++ b/ao-tools/ao-view/aoview_label.c @@ -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 diff --git a/ao-tools/ao-view/aoview_log.c b/ao-tools/ao-view/aoview_log.c index 2880ecb1..fd6b3324 100644 --- a/ao-tools/ao-view/aoview_log.c +++ b/ao-tools/ao-view/aoview_log.c @@ -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 diff --git a/ao-tools/ao-view/aoview_main.c b/ao-tools/ao-view/aoview_main.c index f8704b89..a197b3e6 100644 --- a/ao-tools/ao-view/aoview_main.c +++ b/ao-tools/ao-view/aoview_main.c @@ -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 diff --git a/ao-tools/ao-view/aoview_monitor.c b/ao-tools/ao-view/aoview_monitor.c index 1f9937b2..c7f17045 100644 --- a/ao-tools/ao-view/aoview_monitor.c +++ b/ao-tools/ao-view/aoview_monitor.c @@ -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 diff --git a/ao-tools/ao-view/aoview_replay.c b/ao-tools/ao-view/aoview_replay.c index da7b5d6a..bfdd8d46 100644 --- a/ao-tools/ao-view/aoview_replay.c +++ b/ao-tools/ao-view/aoview_replay.c @@ -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 diff --git a/ao-tools/ao-view/aoview_serial.c b/ao-tools/ao-view/aoview_serial.c index 29038b79..f560da9a 100644 --- a/ao-tools/ao-view/aoview_serial.c +++ b/ao-tools/ao-view/aoview_serial.c @@ -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 diff --git a/ao-tools/ao-view/aoview_state.c b/ao-tools/ao-view/aoview_state.c index 505bcddc..8cf99d0b 100644 --- a/ao-tools/ao-view/aoview_state.c +++ b/ao-tools/ao-view/aoview_state.c @@ -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 diff --git a/ao-tools/ao-view/aoview_table.c b/ao-tools/ao-view/aoview_table.c index e75ae670..d84fd604 100644 --- a/ao-tools/ao-view/aoview_table.c +++ b/ao-tools/ao-view/aoview_table.c @@ -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 diff --git a/ao-tools/ao-view/aoview_util.c b/ao-tools/ao-view/aoview_util.c index 6ea62ac9..56f42571 100644 --- a/ao-tools/ao-view/aoview_util.c +++ b/ao-tools/ao-view/aoview_util.c @@ -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 diff --git a/ao-tools/ao-view/aoview_voice.c b/ao-tools/ao-view/aoview_voice.c index 24422df6..9ecbc401 100644 --- a/ao-tools/ao-view/aoview_voice.c +++ b/ao-tools/ao-view/aoview_voice.c @@ -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 diff --git a/ao-tools/lib/ao-dfu.c b/ao-tools/lib/ao-dfu.c index b6778495..f8aba94b 100644 --- a/ao-tools/lib/ao-dfu.c +++ b/ao-tools/lib/ao-dfu.c @@ -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 diff --git a/ao-tools/lib/ao-dfu.h b/ao-tools/lib/ao-dfu.h index c3dfc496..4bed1a08 100644 --- a/ao-tools/lib/ao-dfu.h +++ b/ao-tools/lib/ao-dfu.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 diff --git a/ao-tools/lib/ao-editaltos.c b/ao-tools/lib/ao-editaltos.c index 7547c82c..06009653 100644 --- a/ao-tools/lib/ao-editaltos.c +++ b/ao-tools/lib/ao-editaltos.c @@ -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 @@ -20,23 +21,23 @@  #include "ao-editaltos.h"  struct ao_sym ao_symbols[] = { -	{ +	[AO_ROMCONFIG_VERSION_INDEX] = {  		.name = "ao_romconfig_version",  		.required = 1  	}, -	{ +	[AO_ROMCONFIG_CHECK_INDEX] = {  		.name = "ao_romconfig_check",  		.required = 1  	}, -	{ +	[AO_SERIAL_NUMBER_INDEX] = {  		.name = "ao_serial_number",  		.required = 1  	}, -	{ +	[AO_RADIO_CAL_INDEX] = {  		.name = "ao_radio_cal",  		.required = 0  	}, -	{ +	[AO_USB_DESCRIPTORS_INDEX] = {  		.name = "ao_usb_descriptors",  		.required = 0  	}, @@ -57,13 +58,6 @@ rewrite(struct ao_hex_image *load, unsigned address, uint8_t *data, int length)  	if (address < load->address || load->address + load->length < address + length)  		return false; -	printf("rewrite %04x:", address); -	for (i = 0; i < length; i++) -		printf (" %02x", load->data[address - load->address + i]); -	printf(" ->"); -	for (i = 0; i < length; i++) -		printf (" %02x", data[i]); -	printf("\n");  	memcpy(load->data + address - load->address, data, length);  	return true;  } @@ -165,3 +159,81 @@ ao_editaltos(struct ao_hex_image *image,  	}  	return true;  } + +static uint16_t +read_le16(uint8_t *src) +{ +	return (uint16_t) src[0] | ((uint16_t) src[1] << 8); +} + +bool +ao_heximage_usb_id(struct ao_hex_image *image, struct ao_usb_id *id) +{ +	uint32_t	usb_descriptors; + +	if (!AO_USB_DESCRIPTORS) +		return false; +	usb_descriptors = AO_USB_DESCRIPTORS - image->address; + +	while (image->data[usb_descriptors] != 0 && usb_descriptors < image->length) { +		if (image->data[usb_descriptors+1] == AO_USB_DESC_DEVICE) { +			break; +		} +		usb_descriptors += image->data[usb_descriptors]; +	} + +	/* +	 * check to make sure there's at least 0x12 (size of a USB +	 * device descriptor) available +	 */ +	if (usb_descriptors >= image->length || image->data[usb_descriptors] != 0x12) +		return false; + +	id->vid = read_le16(image->data + usb_descriptors + 8); +	id->pid = read_le16(image->data + usb_descriptors + 10); + +	return true; +} + +uint16_t * +ao_heximage_usb_product(struct ao_hex_image *image) +{ +	uint32_t	usb_descriptors; +	int		string_num; +	uint16_t	*product; +	uint8_t		product_len; + +	if (!AO_USB_DESCRIPTORS) +		return NULL; +	usb_descriptors = AO_USB_DESCRIPTORS - image->address; + +	string_num = 0; +	while (image->data[usb_descriptors] != 0 && usb_descriptors < image->length) { +		if (image->data[usb_descriptors+1] == AO_USB_DESC_STRING) { +			++string_num; +			if (string_num == 3) +				break; +		} +		usb_descriptors += image->data[usb_descriptors]; +	} + +	/* +	 * check to make sure there's at least 0x12 (size of a USB +	 * device descriptor) available +	 */ +	if (usb_descriptors >= image->length || image->data[usb_descriptors] == 0) +		return NULL; + +	product_len = image->data[usb_descriptors] - 2; + +	if (usb_descriptors < product_len + 2) +		return NULL; + +	product = malloc (product_len + 2); +	if (!product) +		return NULL; + +	memcpy(product, image->data + usb_descriptors + 2, product_len); +	product[product_len/2] = 0; +	return product; +} diff --git a/ao-tools/lib/ao-editaltos.h b/ao-tools/lib/ao-editaltos.h index 74530435..6f2829b0 100644 --- a/ao-tools/lib/ao-editaltos.h +++ b/ao-tools/lib/ao-editaltos.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 @@ -25,19 +26,31 @@  extern struct ao_sym ao_symbols[];  extern int ao_num_symbols; +#define AO_USB_DESC_DEVICE		1  #define AO_USB_DESC_STRING		3 -#define AO_ROMCONFIG_VERSION	(ao_symbols[0].addr) -#define AO_ROMCONFIG_CHECK	(ao_symbols[1].addr) -#define AO_SERIAL_NUMBER	(ao_symbols[2].addr) -#define AO_RADIO_CAL		(ao_symbols[3].addr) -#define AO_USB_DESCRIPTORS	(ao_symbols[4].addr) +#define AO_ROMCONFIG_VERSION_INDEX	0 +#define AO_ROMCONFIG_CHECK_INDEX	1 +#define AO_SERIAL_NUMBER_INDEX		2 +#define AO_RADIO_CAL_INDEX		3 +#define AO_USB_DESCRIPTORS_INDEX	4 + +#define AO_ROMCONFIG_VERSION	(ao_symbols[AO_ROMCONFIG_VERSION_INDEX].addr) +#define AO_ROMCONFIG_CHECK	(ao_symbols[AO_ROMCONFIG_CHECK_INDEX].addr) +#define AO_SERIAL_NUMBER	(ao_symbols[AO_SERIAL_NUMBER_INDEX].addr) +#define AO_RADIO_CAL		(ao_symbols[AO_RADIO_CAL_INDEX].addr) +#define AO_USB_DESCRIPTORS	(ao_symbols[AO_USB_DESCRIPTORS_INDEX].addr)  struct ao_editaltos_funcs {  	uint16_t	(*get_uint16)(void *closure, uint32_t addr);  	uint32_t	(*get_uint32)(void *closure, uint32_t addr);  }; +struct ao_usb_id { +	uint16_t	vid; +	uint16_t	pid; +}; +  bool  ao_editaltos_find_symbols(struct ao_sym *file_symbols, int num_file_symbols,  			  struct ao_sym *symbols, int num_symbols); @@ -47,4 +60,10 @@ ao_editaltos(struct ao_hex_image *image,  	     uint16_t serial,  	     uint32_t radio_cal); +bool +ao_heximage_usb_id(struct ao_hex_image *image, struct ao_usb_id *id); + +uint16_t * +ao_heximage_usb_product(struct ao_hex_image *image); +  #endif /* _AO_EDITALTOS_H_ */ diff --git a/ao-tools/lib/ao-elf.c b/ao-tools/lib/ao-elf.c index 680a80f0..c44102f8 100644 --- a/ao-tools/lib/ao-elf.c +++ b/ao-tools/lib/ao-elf.c @@ -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 diff --git a/ao-tools/lib/ao-elf.h b/ao-tools/lib/ao-elf.h index 0f79d142..5f4e8428 100644 --- a/ao-tools/lib/ao-elf.h +++ b/ao-tools/lib/ao-elf.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 diff --git a/ao-tools/lib/ao-hex.h b/ao-tools/lib/ao-hex.h index a1ab490c..3cd0813b 100644 --- a/ao-tools/lib/ao-hex.h +++ b/ao-tools/lib/ao-hex.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 diff --git a/ao-tools/lib/ao-selfload.c b/ao-tools/lib/ao-selfload.c index 41e45adc..0a23dfda 100644 --- a/ao-tools/lib/ao-selfload.c +++ b/ao-tools/lib/ao-selfload.c @@ -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 @@ -156,3 +157,40 @@ ao_self_get_uint32(struct cc_usb *cc, uint32_t addr)  	free(hex);  	return v;  } + +bool +ao_self_get_usb_id(struct cc_usb *cc, struct ao_usb_id *id) +{ +	struct ao_hex_image	*hex; +	bool			ret; + +	if (!AO_USB_DESCRIPTORS) +		return false; + +	hex = ao_self_read(cc, AO_USB_DESCRIPTORS, 512); +	if (!hex) +		return false; + +	ret = ao_heximage_usb_id(hex, id); +	free(hex); +	return ret; +} + +uint16_t * +ao_self_get_usb_product(struct cc_usb *cc) +{ +	struct ao_hex_image	*hex; +	uint16_t 		*ret; + +	if (!AO_USB_DESCRIPTORS) +		return NULL; + +	hex = ao_self_read(cc, AO_USB_DESCRIPTORS, 512); +	if (!hex) +		return NULL; + +	ret = ao_heximage_usb_product(hex); +	free(hex); +	return ret; +} + diff --git a/ao-tools/lib/ao-selfload.h b/ao-tools/lib/ao-selfload.h index a001a404..4aac5848 100644 --- a/ao-tools/lib/ao-selfload.h +++ b/ao-tools/lib/ao-selfload.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 @@ -21,6 +22,7 @@  #include <stdbool.h>  #include "ao-hex.h"  #include "cc-usb.h" +#include "ao-editaltos.h"  struct ao_hex_image *  ao_self_read(struct cc_usb *cc, uint32_t address, uint32_t length); @@ -34,4 +36,13 @@ ao_self_get_uint16(struct cc_usb *cc, uint32_t addr);  uint32_t  ao_self_get_uint32(struct cc_usb *cc, uint32_t addr); +bool +ao_self_get_usb_id(struct cc_usb *cc, struct ao_usb_id *id); + +uint16_t * +ao_self_get_usb_product(struct cc_usb *cc); + +uint16_t * +ao_self_get_usb_product(struct cc_usb *cc); +  #endif /* _AO_SELFLOAD_H_ */ diff --git a/ao-tools/lib/ao-verbose.c b/ao-tools/lib/ao-verbose.c index a1678ed1..d85b524f 100644 --- a/ao-tools/lib/ao-verbose.c +++ b/ao-tools/lib/ao-verbose.c @@ -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 diff --git a/ao-tools/lib/ao-verbose.h b/ao-tools/lib/ao-verbose.h index 26c2fe41..d23e720c 100644 --- a/ao-tools/lib/ao-verbose.h +++ b/ao-tools/lib/ao-verbose.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 diff --git a/ao-tools/lib/cc-analyse.c b/ao-tools/lib/cc-analyse.c index 27c416a6..52df66e6 100644 --- a/ao-tools/lib/cc-analyse.c +++ b/ao-tools/lib/cc-analyse.c @@ -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 diff --git a/ao-tools/lib/cc-convert.c b/ao-tools/lib/cc-convert.c index b82dd778..0f7fa809 100644 --- a/ao-tools/lib/cc-convert.c +++ b/ao-tools/lib/cc-convert.c @@ -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 diff --git a/ao-tools/lib/cc-dsp.c b/ao-tools/lib/cc-dsp.c index 518c1a68..d44c696d 100644 --- a/ao-tools/lib/cc-dsp.c +++ b/ao-tools/lib/cc-dsp.c @@ -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 diff --git a/ao-tools/lib/cc-integrate.c b/ao-tools/lib/cc-integrate.c index ba50761b..8009f0c3 100644 --- a/ao-tools/lib/cc-integrate.c +++ b/ao-tools/lib/cc-integrate.c @@ -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 diff --git a/ao-tools/lib/cc-log.c b/ao-tools/lib/cc-log.c index ed51f87e..f7674359 100644 --- a/ao-tools/lib/cc-log.c +++ b/ao-tools/lib/cc-log.c @@ -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 diff --git a/ao-tools/lib/cc-logfile.c b/ao-tools/lib/cc-logfile.c index 842e5c7c..88ddda58 100644 --- a/ao-tools/lib/cc-logfile.c +++ b/ao-tools/lib/cc-logfile.c @@ -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 diff --git a/ao-tools/lib/cc-mega.c b/ao-tools/lib/cc-mega.c index 3aa24a6d..2e5a6061 100644 --- a/ao-tools/lib/cc-mega.c +++ b/ao-tools/lib/cc-mega.c @@ -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 diff --git a/ao-tools/lib/cc-period.c b/ao-tools/lib/cc-period.c index 844ac79e..fb1c3ccd 100644 --- a/ao-tools/lib/cc-period.c +++ b/ao-tools/lib/cc-period.c @@ -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 diff --git a/ao-tools/lib/cc-process.c b/ao-tools/lib/cc-process.c index c756b570..74b02a74 100644 --- a/ao-tools/lib/cc-process.c +++ b/ao-tools/lib/cc-process.c @@ -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 diff --git a/ao-tools/lib/cc-telem.c b/ao-tools/lib/cc-telem.c index aa52b7c5..678c078e 100644 --- a/ao-tools/lib/cc-telem.c +++ b/ao-tools/lib/cc-telem.c @@ -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 diff --git a/ao-tools/lib/cc-telemetry.c b/ao-tools/lib/cc-telemetry.c index 45c10dcb..42315128 100644 --- a/ao-tools/lib/cc-telemetry.c +++ b/ao-tools/lib/cc-telemetry.c @@ -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 diff --git a/ao-tools/lib/cc-telemetry.h b/ao-tools/lib/cc-telemetry.h index d64c4b30..500de96c 100644 --- a/ao-tools/lib/cc-telemetry.h +++ b/ao-tools/lib/cc-telemetry.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 diff --git a/ao-tools/lib/cc-util.c b/ao-tools/lib/cc-util.c index 65488ee9..fc617eae 100644 --- a/ao-tools/lib/cc-util.c +++ b/ao-tools/lib/cc-util.c @@ -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 diff --git a/ao-tools/lib/cc.h b/ao-tools/lib/cc.h index ff95e4fc..cbeb705c 100644 --- a/ao-tools/lib/cc.h +++ b/ao-tools/lib/cc.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 diff --git a/ao-tools/lib/cephes.h b/ao-tools/lib/cephes.h index f8ec264f..7d66425b 100644 --- a/ao-tools/lib/cephes.h +++ b/ao-tools/lib/cephes.h @@ -10,7 +10,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 diff --git a/ao-tools/lib/i0.c b/ao-tools/lib/i0.c index 6f7b5a57..2156d1c1 100644 --- a/ao-tools/lib/i0.c +++ b/ao-tools/lib/i0.c @@ -10,7 +10,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 diff --git a/ao-tools/lib/mconf.h b/ao-tools/lib/mconf.h index af1ebb51..9898a2e1 100644 --- a/ao-tools/lib/mconf.h +++ b/ao-tools/lib/mconf.h @@ -10,7 +10,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 diff --git a/ao-tools/target/radio/init.c b/ao-tools/target/radio/init.c index ea7c984c..8c2c96bd 100644 --- a/ao-tools/target/radio/init.c +++ b/ao-tools/target/radio/init.c @@ -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 diff --git a/ao-tools/target/radio/xmit.c b/ao-tools/target/radio/xmit.c index e80a0f8b..a400163c 100644 --- a/ao-tools/target/radio/xmit.c +++ b/ao-tools/target/radio/xmit.c @@ -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 diff --git a/configure.ac b/configure.ac index 001449a7..0fc946f2 100644 --- a/configure.ac +++ b/configure.ac @@ -18,7 +18,7 @@ dnl  dnl Process this file with autoconf to create configure.  AC_PREREQ(2.57) -AC_INIT([altos], 1.6.5) +AC_INIT([altos], 1.6.8)  ANDROID_VERSION=13  AC_CONFIG_SRCDIR([src/kernel/ao.h])  AM_INIT_AUTOMAKE([foreign dist-bzip2]) diff --git a/doc/Makefile b/doc/Makefile index 707a4428..e6fb95ab 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -3,6 +3,7 @@  #  RELNOTES_INC=\ +	release-notes-1.6.8.inc \  	release-notes-1.6.5.inc \  	release-notes-1.6.4.inc \  	release-notes-1.6.3.inc \ diff --git a/doc/altusmetrum-docinfo.xml b/doc/altusmetrum-docinfo.xml index fbd14c5a..e1f4eb62 100644 --- a/doc/altusmetrum-docinfo.xml +++ b/doc/altusmetrum-docinfo.xml @@ -47,6 +47,16 @@  <revhistory>    <?dbhtml filename="altusmetrum-revhistory.html"?>    <revision> +    <revnumber>1.6.8</revnumber> +    <date>4 Sep 2016</date> +    <revremark> +      Minor release fixing another TeleMega and TeleMetrum v2.0 bug +      which could result in loss of data logging and telemetry in +      flight. Also fixed an AltosUI bug which would hide some pad +      status values and never show them again. +    </revremark> +  </revision> +  <revision>      <revnumber>1.6.5</revnumber>      <date>8 Jul 2016</date>      <revremark> diff --git a/doc/release-notes-1.6.8.inc b/doc/release-notes-1.6.8.inc new file mode 100644 index 00000000..8e37fe69 --- /dev/null +++ b/doc/release-notes-1.6.8.inc @@ -0,0 +1,40 @@ += Release Notes for Version 1.6.8 +:toc!: +:doctype: article + +	Version 1.6.8 fixes a TeleMega and TeleMetrum v2.0 bug where +	the device could stop logging data and transmitting +	telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum +	v2.0 users should update their flight firmware. + +	== AltOS + +	AltOS fixes: + +	* Fix STM32L DMA driver to work around STM32L SoC DMA priority +          issue t lock-up in the logging or radio code, either of +          which could stop data logging and telemetry. + +	* Avoid having TeleBT battery status values smash telemetry +          packet data by holding a lock during both operations. + +	* Don't start reporting 'flight 0' when the log fills in +	  flight. + +	AltOS changes: +	 +	* Flash LEDS on all products briefly during power up so that +          they can be tested during production. + +	== AltosUI, TeleGPS and AltosDroid Applications + +	AltosUI fixes: + +	* Re-enable go/no-go entries after they've been disabled due +          to lack of data. If telemetry information is delayed when +          the Ui starts up, sometimes important fields would get +          disabled to never re-appear. + +	* Deal with ground station failure better during Configure +          Ground Station operation by cleaning up pending operations. + diff --git a/doc/release-notes.inc b/doc/release-notes.inc index b8b34e7b..7cd075f6 100644 --- a/doc/release-notes.inc +++ b/doc/release-notes.inc @@ -2,6 +2,10 @@  == Release Notes  	:leveloffset: 2 +	include::release-notes-1.6.8.raw[] + +	<<<< +	:leveloffset: 2  	include::release-notes-1.6.5.raw[]  	<<<< diff --git a/icon/windows-stub.c b/icon/windows-stub.c index e075a02d..8db2be3d 100644 --- a/icon/windows-stub.c +++ b/icon/windows-stub.c @@ -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 diff --git a/libaltos/libaltos.h b/libaltos/libaltos.h index 6d43159b..8c49346f 100644 --- a/libaltos/libaltos.h +++ b/libaltos/libaltos.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 diff --git a/libaltos/libaltos_common.c b/libaltos/libaltos_common.c index 090f03ad..dfafcc7a 100644 --- a/libaltos/libaltos_common.c +++ b/libaltos/libaltos_common.c @@ -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 diff --git a/libaltos/libaltos_darwin.c b/libaltos/libaltos_darwin.c index 04194d9a..c6b6355f 100644 --- a/libaltos/libaltos_darwin.c +++ b/libaltos/libaltos_darwin.c @@ -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 diff --git a/libaltos/libaltos_linux.c b/libaltos/libaltos_linux.c index 2065d74a..1cade72d 100644 --- a/libaltos/libaltos_linux.c +++ b/libaltos/libaltos_linux.c @@ -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 diff --git a/libaltos/libaltos_posix.c b/libaltos/libaltos_posix.c index 731e9aa1..bf5d4699 100644 --- a/libaltos/libaltos_posix.c +++ b/libaltos/libaltos_posix.c @@ -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 diff --git a/libaltos/libaltos_posix.h b/libaltos/libaltos_posix.h index dc9bfb62..bf8b71b6 100644 --- a/libaltos/libaltos_posix.h +++ b/libaltos/libaltos_posix.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 diff --git a/libaltos/libaltos_private.h b/libaltos/libaltos_private.h index 56f6335b..f8e5231b 100644 --- a/libaltos/libaltos_private.h +++ b/libaltos/libaltos_private.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 diff --git a/libaltos/libaltos_windows.c b/libaltos/libaltos_windows.c index 2c3f41e1..e53aa72b 100644 --- a/libaltos/libaltos_windows.c +++ b/libaltos/libaltos_windows.c @@ -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 diff --git a/micropeak/MicroData.java b/micropeak/MicroData.java index e763be27..b45ad2c1 100644 --- a/micropeak/MicroData.java +++ b/micropeak/MicroData.java @@ -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 diff --git a/micropeak/MicroDataPoint.java b/micropeak/MicroDataPoint.java index fd6b4a8b..42079291 100644 --- a/micropeak/MicroDataPoint.java +++ b/micropeak/MicroDataPoint.java @@ -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 diff --git a/micropeak/MicroDeviceDialog.java b/micropeak/MicroDeviceDialog.java index 8b2c747f..010612a0 100644 --- a/micropeak/MicroDeviceDialog.java +++ b/micropeak/MicroDeviceDialog.java @@ -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 diff --git a/micropeak/MicroDownload.java b/micropeak/MicroDownload.java index 9e0299b0..2326ea08 100644 --- a/micropeak/MicroDownload.java +++ b/micropeak/MicroDownload.java @@ -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 diff --git a/micropeak/MicroExport.java b/micropeak/MicroExport.java index 406f7286..f1062681 100644 --- a/micropeak/MicroExport.java +++ b/micropeak/MicroExport.java @@ -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 diff --git a/micropeak/MicroFile.java b/micropeak/MicroFile.java index 00c59931..b341f350 100644 --- a/micropeak/MicroFile.java +++ b/micropeak/MicroFile.java @@ -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 diff --git a/micropeak/MicroFileChooser.java b/micropeak/MicroFileChooser.java index 394b4317..c068244b 100644 --- a/micropeak/MicroFileChooser.java +++ b/micropeak/MicroFileChooser.java @@ -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 diff --git a/micropeak/MicroFrame.java b/micropeak/MicroFrame.java index 618c839e..b6f1f76d 100644 --- a/micropeak/MicroFrame.java +++ b/micropeak/MicroFrame.java @@ -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 diff --git a/micropeak/MicroGraph.java b/micropeak/MicroGraph.java index bc9fb0dc..64a43bd8 100644 --- a/micropeak/MicroGraph.java +++ b/micropeak/MicroGraph.java @@ -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 diff --git a/micropeak/MicroPeak.java b/micropeak/MicroPeak.java index c624246f..9023f452 100644 --- a/micropeak/MicroPeak.java +++ b/micropeak/MicroPeak.java @@ -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 diff --git a/micropeak/MicroRaw.java b/micropeak/MicroRaw.java index 8857958f..f00d7ea3 100644 --- a/micropeak/MicroRaw.java +++ b/micropeak/MicroRaw.java @@ -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 diff --git a/micropeak/MicroSave.java b/micropeak/MicroSave.java index 6822a961..5dda5b8c 100644 --- a/micropeak/MicroSave.java +++ b/micropeak/MicroSave.java @@ -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 diff --git a/micropeak/MicroSerial.java b/micropeak/MicroSerial.java index 93c40d71..43dfd18b 100644 --- a/micropeak/MicroSerial.java +++ b/micropeak/MicroSerial.java @@ -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 diff --git a/micropeak/MicroSerialLog.java b/micropeak/MicroSerialLog.java index 55d759e5..2e6dd236 100644 --- a/micropeak/MicroSerialLog.java +++ b/micropeak/MicroSerialLog.java @@ -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 diff --git a/micropeak/MicroStats.java b/micropeak/MicroStats.java index 75480445..b9637536 100644 --- a/micropeak/MicroStats.java +++ b/micropeak/MicroStats.java @@ -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 diff --git a/micropeak/MicroStatsTable.java b/micropeak/MicroStatsTable.java index 7ffae2f2..e095e3a4 100644 --- a/micropeak/MicroStatsTable.java +++ b/micropeak/MicroStatsTable.java @@ -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 diff --git a/micropeak/MicroUSB.java b/micropeak/MicroUSB.java index 4a72ba58..4ab5fcc9 100644 --- a/micropeak/MicroUSB.java +++ b/micropeak/MicroUSB.java @@ -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 diff --git a/src/Makefile b/src/Makefile index ecba2fbd..5bc0a7a0 100644 --- a/src/Makefile +++ b/src/Makefile @@ -19,7 +19,7 @@ include Makedefs  SDCCDIRS=\  	telemetrum-v1.2 telemetrum-v1.1 telemetrum-v1.0 \  	teledongle-v0.2 \ -	telemini-v1.0 telemini-v2.0 \ +	telemini-v1.0 \  	telebt-v1.0 \  	teleterra-v0.2 teleshield-v0.1 \  	telefire-v0.1 telefire-v0.2 \ @@ -31,6 +31,7 @@ ARMM3DIRS=\  	telemega-v1.0 telemega-v1.0/flash-loader \  	telemega-v2.0 telemega-v2.0/flash-loader \  	telemetrum-v2.0 telemetrum-v2.0/flash-loader \ +	telemetrum-v3.0 telemetrum-v3.0/flash-loader \  	megadongle-v0.1 megadongle-v0.1/flash-loader \  	telegps-v0.3 telegps-v0.3/flash-loader \  	telegps-v1.0 telegps-v1.0/flash-loader \ diff --git a/src/attiny/ao_arch.h b/src/attiny/ao_arch.h index 6ca12af6..3a34f417 100644 --- a/src/attiny/ao_arch.h +++ b/src/attiny/ao_arch.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 diff --git a/src/attiny/ao_arch_funcs.h b/src/attiny/ao_arch_funcs.h index d4584a9f..0b67a407 100644 --- a/src/attiny/ao_arch_funcs.h +++ b/src/attiny/ao_arch_funcs.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 diff --git a/src/attiny/ao_async.c b/src/attiny/ao_async.c index f64f7bde..f7a29d3b 100644 --- a/src/attiny/ao_async.c +++ b/src/attiny/ao_async.c @@ -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 diff --git a/src/attiny/ao_async.h b/src/attiny/ao_async.h index 1b239712..e3ce97f3 100644 --- a/src/attiny/ao_async.h +++ b/src/attiny/ao_async.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 diff --git a/src/attiny/ao_clock.c b/src/attiny/ao_clock.c index 22de8e99..d722d568 100644 --- a/src/attiny/ao_clock.c +++ b/src/attiny/ao_clock.c @@ -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 diff --git a/src/attiny/ao_eeprom_tiny.c b/src/attiny/ao_eeprom_tiny.c index 83014183..be3c965a 100644 --- a/src/attiny/ao_eeprom_tiny.c +++ b/src/attiny/ao_eeprom_tiny.c @@ -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 diff --git a/src/attiny/ao_exti.c b/src/attiny/ao_exti.c index 0ca10ca4..8ae1c4a0 100644 --- a/src/attiny/ao_exti.c +++ b/src/attiny/ao_exti.c @@ -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 diff --git a/src/attiny/ao_exti.h b/src/attiny/ao_exti.h index 85bb2fba..8b22458e 100644 --- a/src/attiny/ao_exti.h +++ b/src/attiny/ao_exti.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 diff --git a/src/attiny/ao_i2c_attiny.c b/src/attiny/ao_i2c_attiny.c index 2ee44fd2..f29ed6a9 100644 --- a/src/attiny/ao_i2c_attiny.c +++ b/src/attiny/ao_i2c_attiny.c @@ -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 diff --git a/src/attiny/ao_led.c b/src/attiny/ao_led.c index 27bbea69..5f53129e 100644 --- a/src/attiny/ao_led.c +++ b/src/attiny/ao_led.c @@ -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 diff --git a/src/attiny/ao_spi_attiny.c b/src/attiny/ao_spi_attiny.c index 3c4afb02..f63eb651 100644 --- a/src/attiny/ao_spi_attiny.c +++ b/src/attiny/ao_spi_attiny.c @@ -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 diff --git a/src/avr-demo/ao_demo.c b/src/avr-demo/ao_demo.c index e35babb3..ff909b37 100644 --- a/src/avr-demo/ao_demo.c +++ b/src/avr-demo/ao_demo.c @@ -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 diff --git a/src/avr/ao_adc_avr.c b/src/avr/ao_adc_avr.c index 231512b2..2732c4db 100644 --- a/src/avr/ao_adc_avr.c +++ b/src/avr/ao_adc_avr.c @@ -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 diff --git a/src/avr/ao_arch.h b/src/avr/ao_arch.h index f8c7f042..2b1da642 100644 --- a/src/avr/ao_arch.h +++ b/src/avr/ao_arch.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 diff --git a/src/avr/ao_arch_funcs.h b/src/avr/ao_arch_funcs.h index 792ff744..891ad9b1 100644 --- a/src/avr/ao_arch_funcs.h +++ b/src/avr/ao_arch_funcs.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 diff --git a/src/avr/ao_avr_stdio.c b/src/avr/ao_avr_stdio.c index f9c0f88c..cca2a971 100644 --- a/src/avr/ao_avr_stdio.c +++ b/src/avr/ao_avr_stdio.c @@ -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 diff --git a/src/avr/ao_clock.c b/src/avr/ao_clock.c index 0d42b6d5..54a9163b 100644 --- a/src/avr/ao_clock.c +++ b/src/avr/ao_clock.c @@ -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 diff --git a/src/avr/ao_debug_avr.c b/src/avr/ao_debug_avr.c index 2e41e15a..3821779e 100644 --- a/src/avr/ao_debug_avr.c +++ b/src/avr/ao_debug_avr.c @@ -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 diff --git a/src/avr/ao_eeprom_avr.c b/src/avr/ao_eeprom_avr.c index 2451fa8a..2fdf177b 100644 --- a/src/avr/ao_eeprom_avr.c +++ b/src/avr/ao_eeprom_avr.c @@ -4,7 +4,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 diff --git a/src/avr/ao_i2c_usart.c b/src/avr/ao_i2c_usart.c index 60e35f8c..c95548d4 100644 --- a/src/avr/ao_i2c_usart.c +++ b/src/avr/ao_i2c_usart.c @@ -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 diff --git a/src/avr/ao_lcd_port.c b/src/avr/ao_lcd_port.c index b1e8aa17..87756e41 100644 --- a/src/avr/ao_lcd_port.c +++ b/src/avr/ao_lcd_port.c @@ -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 diff --git a/src/avr/ao_led.c b/src/avr/ao_led.c index 91dfb85e..8eba4898 100644 --- a/src/avr/ao_led.c +++ b/src/avr/ao_led.c @@ -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 diff --git a/src/avr/ao_pins.h b/src/avr/ao_pins.h index a08e87fa..9686c418 100644 --- a/src/avr/ao_pins.h +++ b/src/avr/ao_pins.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 diff --git a/src/avr/ao_pwmin.c b/src/avr/ao_pwmin.c index 84397357..5eb392a4 100644 --- a/src/avr/ao_pwmin.c +++ b/src/avr/ao_pwmin.c @@ -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 diff --git a/src/avr/ao_pwmin.h b/src/avr/ao_pwmin.h index 8097d399..43c12f53 100644 --- a/src/avr/ao_pwmin.h +++ b/src/avr/ao_pwmin.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 diff --git a/src/avr/ao_romconfig.c b/src/avr/ao_romconfig.c index ecc19c76..4acfc1c8 100644 --- a/src/avr/ao_romconfig.c +++ b/src/avr/ao_romconfig.c @@ -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 diff --git a/src/avr/ao_serial_avr.c b/src/avr/ao_serial_avr.c index e0f813d5..ab82b7b1 100644 --- a/src/avr/ao_serial_avr.c +++ b/src/avr/ao_serial_avr.c @@ -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 diff --git a/src/avr/ao_spi_slave.c b/src/avr/ao_spi_slave.c index 15e9924d..3504739d 100644 --- a/src/avr/ao_spi_slave.c +++ b/src/avr/ao_spi_slave.c @@ -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 diff --git a/src/avr/ao_spi_usart.c b/src/avr/ao_spi_usart.c index 7c41042a..0d509cb7 100644 --- a/src/avr/ao_spi_usart.c +++ b/src/avr/ao_spi_usart.c @@ -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 diff --git a/src/avr/ao_timer.c b/src/avr/ao_timer.c index d2ea2be7..2eaa8b63 100644 --- a/src/avr/ao_timer.c +++ b/src/avr/ao_timer.c @@ -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 diff --git a/src/avr/ao_usb_avr.c b/src/avr/ao_usb_avr.c index cb0455c2..08950a97 100644 --- a/src/avr/ao_usb_avr.c +++ b/src/avr/ao_usb_avr.c @@ -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 diff --git a/src/cc1111/ao_adc.c b/src/cc1111/ao_adc.c index 1689ebef..94af5cda 100644 --- a/src/cc1111/ao_adc.c +++ b/src/cc1111/ao_adc.c @@ -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 diff --git a/src/cc1111/ao_aes.c b/src/cc1111/ao_aes.c index b1f305ec..e845a928 100644 --- a/src/cc1111/ao_aes.c +++ b/src/cc1111/ao_aes.c @@ -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 diff --git a/src/cc1111/ao_arch.h b/src/cc1111/ao_arch.h index 6eb1a111..bacfabb8 100644 --- a/src/cc1111/ao_arch.h +++ b/src/cc1111/ao_arch.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 diff --git a/src/cc1111/ao_arch_funcs.h b/src/cc1111/ao_arch_funcs.h index 1eb506cd..d849655b 100644 --- a/src/cc1111/ao_arch_funcs.h +++ b/src/cc1111/ao_arch_funcs.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 diff --git a/src/cc1111/ao_battery.c b/src/cc1111/ao_battery.c index b9845fb3..9fb4c26b 100644 --- a/src/cc1111/ao_battery.c +++ b/src/cc1111/ao_battery.c @@ -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 diff --git a/src/cc1111/ao_beep.c b/src/cc1111/ao_beep.c index 3642f4c6..04d10485 100644 --- a/src/cc1111/ao_beep.c +++ b/src/cc1111/ao_beep.c @@ -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 diff --git a/src/cc1111/ao_button.c b/src/cc1111/ao_button.c index a0f221c2..0496a32f 100644 --- a/src/cc1111/ao_button.c +++ b/src/cc1111/ao_button.c @@ -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 diff --git a/src/cc1111/ao_dbg.c b/src/cc1111/ao_dbg.c index 4e534697..ca751b88 100644 --- a/src/cc1111/ao_dbg.c +++ b/src/cc1111/ao_dbg.c @@ -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 diff --git a/src/cc1111/ao_dma.c b/src/cc1111/ao_dma.c index 8779ddf4..18266518 100644 --- a/src/cc1111/ao_dma.c +++ b/src/cc1111/ao_dma.c @@ -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 diff --git a/src/cc1111/ao_exti.c b/src/cc1111/ao_exti.c index 537f6252..e21e417c 100644 --- a/src/cc1111/ao_exti.c +++ b/src/cc1111/ao_exti.c @@ -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 diff --git a/src/cc1111/ao_exti.h b/src/cc1111/ao_exti.h index 49fca5d2..927a4f09 100644 --- a/src/cc1111/ao_exti.h +++ b/src/cc1111/ao_exti.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 diff --git a/src/cc1111/ao_intflash.c b/src/cc1111/ao_intflash.c index eb3535c6..154b3c25 100644 --- a/src/cc1111/ao_intflash.c +++ b/src/cc1111/ao_intflash.c @@ -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 diff --git a/src/cc1111/ao_launch.c b/src/cc1111/ao_launch.c index 420f7568..4f0a0c14 100644 --- a/src/cc1111/ao_launch.c +++ b/src/cc1111/ao_launch.c @@ -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 diff --git a/src/cc1111/ao_lcd_port.c b/src/cc1111/ao_lcd_port.c index e61b1a60..9b588090 100644 --- a/src/cc1111/ao_lcd_port.c +++ b/src/cc1111/ao_lcd_port.c @@ -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 diff --git a/src/cc1111/ao_led.c b/src/cc1111/ao_led.c index 5beed58d..5fae46c2 100644 --- a/src/cc1111/ao_led.c +++ b/src/cc1111/ao_led.c @@ -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 diff --git a/src/cc1111/ao_pins.h b/src/cc1111/ao_pins.h index 9cbb0a7b..10b1f802 100644 --- a/src/cc1111/ao_pins.h +++ b/src/cc1111/ao_pins.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 diff --git a/src/cc1111/ao_radio.c b/src/cc1111/ao_radio.c index cead0364..166d14d5 100644 --- a/src/cc1111/ao_radio.c +++ b/src/cc1111/ao_radio.c @@ -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 @@ -587,13 +588,13 @@ ao_radio_rdf_abort(void)  /* Output carrier */ -static __xdata	ao_radio_test_on; +static __xdata	radio_test_on;  void  ao_radio_test(uint8_t on)  {  	if (on) { -		if (!ao_radio_test_on) { +		if (!radio_test_on) {  #if HAS_MONITOR  			ao_monitor_disable();  #endif @@ -605,13 +606,13 @@ ao_radio_test(uint8_t on)  #endif  			ao_radio_get(0xff);  			RFST = RFST_STX; -			ao_radio_test_on = 1; +			radio_test_on = 1;  		}  	} else  { -		if (ao_radio_test_on) { +		if (radio_test_on) {  			ao_radio_idle();  			ao_radio_put(); -			ao_radio_test_on = 0; +			radio_test_on = 0;  #if HAS_MONITOR  			ao_monitor_enable();  #endif diff --git a/src/cc1111/ao_reboot.c b/src/cc1111/ao_reboot.c index 8c47b893..6e1de7a3 100644 --- a/src/cc1111/ao_reboot.c +++ b/src/cc1111/ao_reboot.c @@ -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 diff --git a/src/cc1111/ao_romconfig.c b/src/cc1111/ao_romconfig.c index f3fe61b1..abd51b23 100644 --- a/src/cc1111/ao_romconfig.c +++ b/src/cc1111/ao_romconfig.c @@ -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 diff --git a/src/cc1111/ao_serial.c b/src/cc1111/ao_serial.c index b4f57908..70293b4e 100644 --- a/src/cc1111/ao_serial.c +++ b/src/cc1111/ao_serial.c @@ -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 diff --git a/src/cc1111/ao_spi.c b/src/cc1111/ao_spi.c index fb08f3f5..124e09cb 100644 --- a/src/cc1111/ao_spi.c +++ b/src/cc1111/ao_spi.c @@ -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 diff --git a/src/cc1111/ao_string.c b/src/cc1111/ao_string.c index 85d6383e..dd62ca3d 100644 --- a/src/cc1111/ao_string.c +++ b/src/cc1111/ao_string.c @@ -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 diff --git a/src/cc1111/ao_timer.c b/src/cc1111/ao_timer.c index 2fbc6621..0acef562 100644 --- a/src/cc1111/ao_timer.c +++ b/src/cc1111/ao_timer.c @@ -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 diff --git a/src/cc1111/ao_usb.c b/src/cc1111/ao_usb.c index d9d255f8..7d363c08 100644 --- a/src/cc1111/ao_usb.c +++ b/src/cc1111/ao_usb.c @@ -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 diff --git a/src/cc1111/cc1111.h b/src/cc1111/cc1111.h index ac1e71c9..7d7c3a20 100644 --- a/src/cc1111/cc1111.h +++ b/src/cc1111/cc1111.h @@ -5,7 +5,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 diff --git a/src/chaoskey-v0.1/ao_chaoskey.c b/src/chaoskey-v0.1/ao_chaoskey.c index 48c8bf04..68928416 100644 --- a/src/chaoskey-v0.1/ao_chaoskey.c +++ b/src/chaoskey-v0.1/ao_chaoskey.c @@ -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 diff --git a/src/chaoskey-v0.1/ao_pins.h b/src/chaoskey-v0.1/ao_pins.h index 73f76307..cb8f3393 100644 --- a/src/chaoskey-v0.1/ao_pins.h +++ b/src/chaoskey-v0.1/ao_pins.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 diff --git a/src/chaoskey-v0.1/flash-loader/ao_pins.h b/src/chaoskey-v0.1/flash-loader/ao_pins.h index 295e0258..a2370e17 100644 --- a/src/chaoskey-v0.1/flash-loader/ao_pins.h +++ b/src/chaoskey-v0.1/flash-loader/ao_pins.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 diff --git a/src/chaoskey-v1.0/ao_chaoskey.c b/src/chaoskey-v1.0/ao_chaoskey.c index f887e601..c3acd441 100644 --- a/src/chaoskey-v1.0/ao_chaoskey.c +++ b/src/chaoskey-v1.0/ao_chaoskey.c @@ -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 diff --git a/src/chaoskey-v1.0/ao_pins.h b/src/chaoskey-v1.0/ao_pins.h index 89a2cb08..f2c46d8b 100644 --- a/src/chaoskey-v1.0/ao_pins.h +++ b/src/chaoskey-v1.0/ao_pins.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 diff --git a/src/chaoskey-v1.0/flash-loader/ao_pins.h b/src/chaoskey-v1.0/flash-loader/ao_pins.h index 570800ca..4b788f67 100644 --- a/src/chaoskey-v1.0/flash-loader/ao_pins.h +++ b/src/chaoskey-v1.0/flash-loader/ao_pins.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 diff --git a/src/detherm/ao_detherm.c b/src/detherm/ao_detherm.c index fba9195e..0f7f4c85 100644 --- a/src/detherm/ao_detherm.c +++ b/src/detherm/ao_detherm.c @@ -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 diff --git a/src/detherm/ao_pins.h b/src/detherm/ao_pins.h index 1c577b6e..a8f9f2a4 100644 --- a/src/detherm/ao_pins.h +++ b/src/detherm/ao_pins.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 diff --git a/src/detherm/flash-loader/ao_pins.h b/src/detherm/flash-loader/ao_pins.h index 570800ca..4b788f67 100644 --- a/src/detherm/flash-loader/ao_pins.h +++ b/src/detherm/flash-loader/ao_pins.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 diff --git a/src/drivers/ao_25lc1024.c b/src/drivers/ao_25lc1024.c index fac0a430..a9c897b3 100644 --- a/src/drivers/ao_25lc1024.c +++ b/src/drivers/ao_25lc1024.c @@ -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 diff --git a/src/drivers/ao_25lc1024.h b/src/drivers/ao_25lc1024.h index 44e52387..7e48f0dd 100644 --- a/src/drivers/ao_25lc1024.h +++ b/src/drivers/ao_25lc1024.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 diff --git a/src/drivers/ao_74hc165.c b/src/drivers/ao_74hc165.c index 143f4e3f..8842801d 100644 --- a/src/drivers/ao_74hc165.c +++ b/src/drivers/ao_74hc165.c @@ -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 diff --git a/src/drivers/ao_74hc165.h b/src/drivers/ao_74hc165.h index 3ae51353..febbf1b3 100644 --- a/src/drivers/ao_74hc165.h +++ b/src/drivers/ao_74hc165.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 diff --git a/src/drivers/ao_74hc497.c b/src/drivers/ao_74hc497.c index 4c13ee71..b3fd3c91 100644 --- a/src/drivers/ao_74hc497.c +++ b/src/drivers/ao_74hc497.c @@ -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 diff --git a/src/drivers/ao_74hc497.h b/src/drivers/ao_74hc497.h index 6df7bcae..bb14f20a 100644 --- a/src/drivers/ao_74hc497.h +++ b/src/drivers/ao_74hc497.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 diff --git a/src/drivers/ao_aprs.h b/src/drivers/ao_aprs.h index a033fa0b..8f70d2d0 100644 --- a/src/drivers/ao_aprs.h +++ b/src/drivers/ao_aprs.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 diff --git a/src/drivers/ao_at24c.c b/src/drivers/ao_at24c.c index 2a23be3a..8f91e3ca 100644 --- a/src/drivers/ao_at24c.c +++ b/src/drivers/ao_at24c.c @@ -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 diff --git a/src/drivers/ao_at45db161d.c b/src/drivers/ao_at45db161d.c index e7e74153..abba3f1f 100644 --- a/src/drivers/ao_at45db161d.c +++ b/src/drivers/ao_at45db161d.c @@ -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 diff --git a/src/drivers/ao_at45db161d.h b/src/drivers/ao_at45db161d.h index 9ee6f1b6..db52f0f4 100644 --- a/src/drivers/ao_at45db161d.h +++ b/src/drivers/ao_at45db161d.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 diff --git a/src/drivers/ao_btm.c b/src/drivers/ao_btm.c index 8e7052cb..c65a8548 100644 --- a/src/drivers/ao_btm.c +++ b/src/drivers/ao_btm.c @@ -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 diff --git a/src/drivers/ao_bufio.c b/src/drivers/ao_bufio.c index 70e30b67..f212da53 100644 --- a/src/drivers/ao_bufio.c +++ b/src/drivers/ao_bufio.c @@ -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 diff --git a/src/drivers/ao_bufio.h b/src/drivers/ao_bufio.h index 6629f143..b0a11944 100644 --- a/src/drivers/ao_bufio.h +++ b/src/drivers/ao_bufio.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 diff --git a/src/drivers/ao_button.c b/src/drivers/ao_button.c index 8e7dead7..725ac45a 100644 --- a/src/drivers/ao_button.c +++ b/src/drivers/ao_button.c @@ -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 @@ -92,6 +93,12 @@ _ao_button_init(uint8_t b)  } +uint8_t +ao_button_get(uint8_t b) +{ +	return ao_button_state[b].value; +} +  static void  ao_button_isr(void)  { diff --git a/src/drivers/ao_button.h b/src/drivers/ao_button.h index ce349d65..601472f9 100644 --- a/src/drivers/ao_button.h +++ b/src/drivers/ao_button.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 @@ -18,6 +19,9 @@  #ifndef _AO_BUTTON_H_  #define _AO_BUTTON_H_ +uint8_t +ao_button_get(uint8_t b); +  void  ao_button_init(void); diff --git a/src/drivers/ao_cc1120.c b/src/drivers/ao_cc1120.c index 6b800585..efe5f996 100644 --- a/src/drivers/ao_cc1120.c +++ b/src/drivers/ao_cc1120.c @@ -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 @@ -182,9 +183,8 @@ ao_radio_fifo_write_start(void)  	return status;  } -static inline uint8_t ao_radio_fifo_write_stop(uint8_t status) { +static inline void ao_radio_fifo_write_stop(void) {  	ao_radio_deselect(); -	return status;  }  static uint8_t @@ -192,7 +192,8 @@ ao_radio_fifo_write(uint8_t *data, uint8_t len)  {  	uint8_t	status = ao_radio_fifo_write_start();  	ao_radio_spi_send(data, len); -	return ao_radio_fifo_write_stop(status); +	ao_radio_fifo_write_stop(); +	return status;  }  static uint8_t @@ -200,7 +201,8 @@ ao_radio_fifo_write_fixed(uint8_t data, uint8_t len)  {  	uint8_t status = ao_radio_fifo_write_start();  	ao_radio_spi_send_fixed(data, len); -	return ao_radio_fifo_write_stop(status); +	ao_radio_fifo_write_stop(); +	return status;  }  static uint8_t @@ -773,11 +775,10 @@ void  ao_radio_continuity(uint8_t c)  {  	uint8_t	i; -	uint8_t status;  	ao_rdf_start(AO_RADIO_CONT_TOTAL_LEN); -	status = ao_radio_fifo_write_start(); +	(void) ao_radio_fifo_write_start();  	for (i = 0; i < 3; i++) {  		ao_radio_spi_send_fixed(0x00, AO_RADIO_CONT_PAUSE_LEN);  		if (i < c) @@ -786,8 +787,7 @@ ao_radio_continuity(uint8_t c)  			ao_radio_spi_send_fixed(0x00, AO_RADIO_CONT_TONE_LEN);  	}  	ao_radio_spi_send_fixed(0x00, AO_RADIO_CONT_PAUSE_LEN); -	status = ao_radio_fifo_write_stop(status); -	(void) status; +	ao_radio_fifo_write_stop();  	ao_rdf_run();  } @@ -998,6 +998,8 @@ ao_radio_rx_isr(void)  {  	uint8_t	d; +	if (ao_radio_abort) +		return;  	if (rx_task_id) {  		if (ao_radio_try_select(rx_task_id)) {  			++rx_fast_start; diff --git a/src/drivers/ao_cc1120.h b/src/drivers/ao_cc1120.h index 943f3449..87b083d4 100644 --- a/src/drivers/ao_cc1120.h +++ b/src/drivers/ao_cc1120.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 diff --git a/src/drivers/ao_cc115l.c b/src/drivers/ao_cc115l.c index 24180f34..a67071d2 100644 --- a/src/drivers/ao_cc115l.c +++ b/src/drivers/ao_cc115l.c @@ -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 diff --git a/src/drivers/ao_cc115l.h b/src/drivers/ao_cc115l.h index 811c14aa..c40f5358 100644 --- a/src/drivers/ao_cc115l.h +++ b/src/drivers/ao_cc115l.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 diff --git a/src/drivers/ao_cc1200.c b/src/drivers/ao_cc1200.c index cd85f208..2bc99734 100644 --- a/src/drivers/ao_cc1200.c +++ b/src/drivers/ao_cc1200.c @@ -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 @@ -802,18 +803,12 @@ ao_radio_rdf_abort(void)  	ao_wakeup(&ao_radio_wake);  } -static void -ao_radio_test_cmd(void) +static uint8_t radio_on; + +void +ao_radio_test_on(void)  { -	uint8_t	mode = 2; -	static uint8_t radio_on; -	ao_cmd_white(); -	if (ao_cmd_lex_c != '\n') { -		ao_cmd_decimal(); -		mode = (uint8_t) ao_cmd_lex_u32; -	} -	mode++; -	if ((mode & 2) && !radio_on) { +	if (!radio_on) {  #if HAS_MONITOR  		ao_monitor_disable();  #endif @@ -836,12 +831,12 @@ ao_radio_test_cmd(void)  #endif  		radio_on = 1;  	} -	if (mode == 3) { -		printf ("Hit a character to stop..."); flush(); -		getchar(); -		putchar('\n'); -	} -	if ((mode & 1) && radio_on) { +} + +void +ao_radio_test_off(void) +{ +	if (radio_on) {  		ao_radio_idle();  		ao_radio_put();  		radio_on = 0; @@ -854,6 +849,27 @@ ao_radio_test_cmd(void)  	}  } +static void +ao_radio_test_cmd(void) +{ +	uint8_t	mode = 2; +	ao_cmd_white(); +	if (ao_cmd_lex_c != '\n') { +		ao_cmd_decimal(); +		mode = (uint8_t) ao_cmd_lex_u32; +	} +	mode++; +	if ((mode & 2)) +		ao_radio_test_on(); +	if (mode == 3) { +		printf ("Hit a character to stop..."); flush(); +		getchar(); +		putchar('\n'); +	} +	if ((mode & 1)) +		ao_radio_test_off(); +} +  void  ao_radio_send(const void *d, uint8_t size)  { diff --git a/src/drivers/ao_cc1200.h b/src/drivers/ao_cc1200.h index b2b63cde..8e17bbd9 100644 --- a/src/drivers/ao_cc1200.h +++ b/src/drivers/ao_cc1200.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 diff --git a/src/drivers/ao_companion.c b/src/drivers/ao_companion.c index 5f07e8b0..f82558a3 100644 --- a/src/drivers/ao_companion.c +++ b/src/drivers/ao_companion.c @@ -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 diff --git a/src/drivers/ao_event.c b/src/drivers/ao_event.c index 8f88d778..9856c2aa 100644 --- a/src/drivers/ao_event.c +++ b/src/drivers/ao_event.c @@ -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 diff --git a/src/drivers/ao_event.h b/src/drivers/ao_event.h index ea89da23..d1c69d81 100644 --- a/src/drivers/ao_event.h +++ b/src/drivers/ao_event.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 diff --git a/src/drivers/ao_fat.c b/src/drivers/ao_fat.c index cbcd42bc..fb8eecff 100644 --- a/src/drivers/ao_fat.c +++ b/src/drivers/ao_fat.c @@ -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 diff --git a/src/drivers/ao_fat.h b/src/drivers/ao_fat.h index 01435363..39f4207b 100644 --- a/src/drivers/ao_fat.h +++ b/src/drivers/ao_fat.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 diff --git a/src/drivers/ao_gps_sirf.c b/src/drivers/ao_gps_sirf.c index d89435b9..8bebd610 100644 --- a/src/drivers/ao_gps_sirf.c +++ b/src/drivers/ao_gps_sirf.c @@ -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 diff --git a/src/drivers/ao_gps_skytraq.c b/src/drivers/ao_gps_skytraq.c index 066df6ff..c483382e 100644 --- a/src/drivers/ao_gps_skytraq.c +++ b/src/drivers/ao_gps_skytraq.c @@ -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 diff --git a/src/drivers/ao_gps_ublox.c b/src/drivers/ao_gps_ublox.c index 74c29e0a..22af413a 100644 --- a/src/drivers/ao_gps_ublox.c +++ b/src/drivers/ao_gps_ublox.c @@ -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 diff --git a/src/drivers/ao_gps_ublox.h b/src/drivers/ao_gps_ublox.h index e4a358a8..1d9bcee8 100644 --- a/src/drivers/ao_gps_ublox.h +++ b/src/drivers/ao_gps_ublox.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 diff --git a/src/drivers/ao_hmc5883.c b/src/drivers/ao_hmc5883.c index f761671a..f668fb66 100644 --- a/src/drivers/ao_hmc5883.c +++ b/src/drivers/ao_hmc5883.c @@ -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 diff --git a/src/drivers/ao_hmc5883.h b/src/drivers/ao_hmc5883.h index ff2725eb..78637b02 100644 --- a/src/drivers/ao_hmc5883.h +++ b/src/drivers/ao_hmc5883.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 diff --git a/src/drivers/ao_lcd.c b/src/drivers/ao_lcd.c index 6def0c80..c35093bc 100644 --- a/src/drivers/ao_lcd.c +++ b/src/drivers/ao_lcd.c @@ -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 diff --git a/src/drivers/ao_lco.c b/src/drivers/ao_lco.c index 6c192537..00f10ecc 100644 --- a/src/drivers/ao_lco.c +++ b/src/drivers/ao_lco.c @@ -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 diff --git a/src/drivers/ao_lco.h b/src/drivers/ao_lco.h index 253f9702..5721eed5 100644 --- a/src/drivers/ao_lco.h +++ b/src/drivers/ao_lco.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 diff --git a/src/drivers/ao_lco_cmd.c b/src/drivers/ao_lco_cmd.c index 6a365687..dcc0c6d0 100644 --- a/src/drivers/ao_lco_cmd.c +++ b/src/drivers/ao_lco_cmd.c @@ -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 diff --git a/src/drivers/ao_lco_cmd.h b/src/drivers/ao_lco_cmd.h index c55448cd..2975bffe 100644 --- a/src/drivers/ao_lco_cmd.h +++ b/src/drivers/ao_lco_cmd.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 diff --git a/src/drivers/ao_lco_func.c b/src/drivers/ao_lco_func.c index 08d45467..862cb1be 100644 --- a/src/drivers/ao_lco_func.c +++ b/src/drivers/ao_lco_func.c @@ -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 diff --git a/src/drivers/ao_lco_func.h b/src/drivers/ao_lco_func.h index 42754352..6b06f928 100644 --- a/src/drivers/ao_lco_func.h +++ b/src/drivers/ao_lco_func.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 diff --git a/src/drivers/ao_lco_two.c b/src/drivers/ao_lco_two.c index f53fef7d..1cb0546c 100644 --- a/src/drivers/ao_lco_two.c +++ b/src/drivers/ao_lco_two.c @@ -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 @@ -18,6 +19,7 @@  #include <ao.h>  #include <ao_lco.h>  #include <ao_event.h> +#include <ao_button.h>  #include <ao_lco_func.h>  #include <ao_radio_cmac.h> @@ -36,7 +38,6 @@ static uint8_t	ao_lco_debug;  #define AO_LCO_VALID_EVER	2  static uint8_t	ao_lco_suspended; -static uint8_t	ao_lco_selected;  static uint8_t	ao_lco_valid;  static uint8_t	ao_lco_channels;  static uint16_t	ao_lco_tick_offset; @@ -44,29 +45,34 @@ static uint16_t	ao_lco_tick_offset;  /* UI values */  static uint8_t	ao_lco_armed;  static uint8_t	ao_lco_firing; - -#define ao_lco_box	(ao_config.pad_box) +static uint8_t	ao_lco_box;  static struct ao_pad_query	ao_pad_query; -#define MASK_SIZE(n)	(((n) + 7) >> 3) -#define MASK_ID(n)	((n) >> 3) -#define MASK_SHIFT(n)	((n) & 7) +/* TeleFireTwo boxes have a single pad */ +#define ao_lco_pad	0  static void -ao_lco_set_armed(int pad, int armed) +ao_lco_set_box(int box)  { -	uint8_t	bit = (1 << pad); +	ao_lco_box = ao_config.pad_box + box; +	ao_lco_valid = 0; +	ao_lco_armed = 0; +	ao_wakeup(&ao_lco_armed); +} + +static void +ao_lco_set_armed(int armed) +{ +	uint8_t	bit = (1 << ao_lco_pad);  	if (armed) { -		ao_lco_selected |= bit; -		ao_lco_armed |= bit; +		ao_lco_armed = bit;  	} else { -		ao_lco_selected &= ~bit; -		ao_lco_armed &= ~bit; +		ao_lco_armed = 0;  	} -	PRINTD(DEBUG_EVENT, "pad %d bit 0x%x armed %d ao_lco_selected 0x%x ao_lco_armed 0x%x\n", -	       pad, bit, armed, ao_lco_selected, ao_lco_armed); +	PRINTD(DEBUG_EVENT, "pad %d bit 0x%x armed %d ao_lco_armed 0x%x\n", +	       ao_lco_pad, bit, armed, ao_lco_armed);  	ao_wakeup(&ao_lco_armed);  } @@ -76,7 +82,6 @@ ao_lco_suspend(void)  	if (!ao_lco_suspended) {  		PRINTD(DEBUG_EVENT, "suspend\n");  		ao_lco_suspended = 1; -		ao_lco_selected = 0;  		ao_lco_armed = 0;  		ao_wakeup(&ao_pad_query);  	} @@ -97,7 +102,6 @@ ao_lco_input(void)  	static struct ao_event	event;  	uint8_t	timeout; -	ao_config_get();  	for (;;) {  		if (ao_config.pad_idle && !ao_lco_suspended) {  			timeout = ao_event_get_for(&event, AO_SEC_TO_TICKS(ao_config.pad_idle)); @@ -114,14 +118,12 @@ ao_lco_input(void)  		switch (event.type) {  		case AO_EVENT_BUTTON:  			switch (event.unit) { -			case AO_BUTTON_ARM_0: -				ao_lco_set_armed(0, event.value); +			case AO_BUTTON_BOX: +				ao_lco_set_box(event.value);  				break; -#if AO_BUTTON_ARM_NUM > 1 -			case AO_BUTTON_ARM_1: -				ao_lco_set_armed(1, event.value); +			case AO_BUTTON_ARM: +				ao_lco_set_armed(event.value);  				break; -#endif  			case AO_BUTTON_FIRE:  				if (ao_lco_armed) {  					ao_lco_firing = event.value; @@ -185,6 +187,7 @@ ao_lco_igniter_status(void)  	uint8_t		t = 0;  	for (;;) { +		uint8_t	all_status;  		ao_sleep(&ao_pad_query);  		while (ao_lco_suspended) {  			ao_led_off(AO_LED_GREEN|AO_LED_AMBER|AO_LED_RED|AO_LED_REMOTE_ARM); @@ -192,13 +195,14 @@ ao_lco_igniter_status(void)  				ao_led_off(continuity_led[c]);  			ao_sleep(&ao_lco_suspended);  		} -		PRINTD(DEBUG_STATUS, "RSSI %d VALID %d\n", ao_radio_cmac_rssi, ao_lco_valid); +		PRINTD(DEBUG_STATUS, "RSSI %d VALID %d channels %d arm_status %d\n", +		       ao_radio_cmac_rssi, ao_lco_valid, +		       ao_lco_channels, ao_pad_query.arm_status);  		if (!(ao_lco_valid & AO_LCO_VALID_LAST)) {  			ao_led_on(AO_LED_RED);  			ao_led_off(AO_LED_GREEN|AO_LED_AMBER); -			continue; -		} -		if (ao_radio_cmac_rssi < -90) { +			memset(&ao_pad_query, '\0', sizeof (ao_pad_query)); +		} else if (ao_radio_cmac_rssi < -90) {  			ao_led_on(AO_LED_AMBER);  			ao_led_off(AO_LED_RED|AO_LED_GREEN);  		} else { @@ -210,15 +214,28 @@ ao_lco_igniter_status(void)  		else  			ao_led_off(AO_LED_REMOTE_ARM); +		all_status = AO_PAD_IGNITER_STATUS_NO_IGNITER_RELAY_OPEN; +		for (c = 0; c < 8; c++) { +			if (ao_pad_query.channels & (1 << c)) { +				uint8_t status = ao_pad_query.igniter_status[c]; +				if (status > all_status) +					all_status = status; +				PRINTD(DEBUG_STATUS, "\tchannel %d status %d\n", c, status); +			} +		}  		for (c = 0; c < AO_LED_CONTINUITY_NUM; c++) { -			uint8_t	status; - -			if (ao_pad_query.channels & (1 << c)) -				status = ao_pad_query.igniter_status[c]; -			else -				status = AO_PAD_IGNITER_STATUS_NO_IGNITER_RELAY_OPEN; -			PRINTD(DEBUG_STATUS, "\tchannel %d status %d\n", c, status); -			if (status == AO_PAD_IGNITER_STATUS_GOOD_IGNITER_RELAY_OPEN) +			uint8_t	on = 0; +			if (c == (ao_lco_box - ao_config.pad_box) % AO_LED_CONTINUITY_NUM) { +				switch (all_status) { +				case AO_PAD_IGNITER_STATUS_GOOD_IGNITER_RELAY_OPEN: +					on = 1; +					break; +				case AO_PAD_IGNITER_STATUS_NO_IGNITER_RELAY_CLOSED: +				case AO_PAD_IGNITER_STATUS_UNKNOWN: +					on = t & 1; +				} +			} +			if (on)  				ao_led_on(continuity_led[c]);  			else  				ao_led_off(continuity_led[c]); @@ -254,10 +271,14 @@ ao_lco_monitor(void)  {  	uint16_t		delay; +	ao_config_get(); +	ao_lco_set_box(ao_button_get(AO_BUTTON_BOX));  	ao_add_task(&ao_lco_input_task, ao_lco_input, "lco input");  	ao_add_task(&ao_lco_arm_warn_task, ao_lco_arm_warn, "lco arm warn");  	ao_add_task(&ao_lco_igniter_status_task, ao_lco_igniter_status, "lco igniter status"); +	ao_led_on(~0);  	ao_beep_for(AO_BEEP_MID, AO_MS_TO_TICKS(200)); +	ao_led_off(~0);  	for (;;) {  		while (ao_lco_suspended)  			ao_sleep(&ao_lco_suspended); @@ -270,13 +291,11 @@ ao_lco_monitor(void)  		} else {  			ao_lco_get_channels();  			if (ao_lco_armed) { -				if (ao_lco_selected) { -					PRINTD(DEBUG_STATUS, "Arming pads %x\n", -					       ao_lco_selected); -					if (ao_lco_valid & AO_LCO_VALID_EVER) { -						ao_lco_arm(ao_lco_box, ao_lco_selected, ao_lco_tick_offset); -						ao_delay(AO_MS_TO_TICKS(10)); -					} +				PRINTD(DEBUG_STATUS, "Arming pads %x\n", +				       ao_lco_armed); +				if (ao_lco_valid & AO_LCO_VALID_EVER) { +					ao_lco_arm(ao_lco_box, ao_lco_armed, ao_lco_tick_offset); +					ao_delay(AO_MS_TO_TICKS(10));  				}  			}  		} diff --git a/src/drivers/ao_log_fat.c b/src/drivers/ao_log_fat.c index 45b67012..62e97868 100644 --- a/src/drivers/ao_log_fat.c +++ b/src/drivers/ao_log_fat.c @@ -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 diff --git a/src/drivers/ao_m25.c b/src/drivers/ao_m25.c index e6c7bb4d..b506b0a7 100644 --- a/src/drivers/ao_m25.c +++ b/src/drivers/ao_m25.c @@ -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 diff --git a/src/drivers/ao_mma655x.c b/src/drivers/ao_mma655x.c index c36858ad..b9f1709c 100644 --- a/src/drivers/ao_mma655x.c +++ b/src/drivers/ao_mma655x.c @@ -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 diff --git a/src/drivers/ao_mma655x.h b/src/drivers/ao_mma655x.h index e57e3377..87f7384d 100644 --- a/src/drivers/ao_mma655x.h +++ b/src/drivers/ao_mma655x.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 diff --git a/src/drivers/ao_mpu6000.c b/src/drivers/ao_mpu6000.c index c0458027..650407ad 100644 --- a/src/drivers/ao_mpu6000.c +++ b/src/drivers/ao_mpu6000.c @@ -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 diff --git a/src/drivers/ao_mpu6000.h b/src/drivers/ao_mpu6000.h index dc3a9fbf..ae42d4b4 100644 --- a/src/drivers/ao_mpu6000.h +++ b/src/drivers/ao_mpu6000.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 diff --git a/src/drivers/ao_mr25.c b/src/drivers/ao_mr25.c index 53cbf9d7..2d355c9f 100644 --- a/src/drivers/ao_mr25.c +++ b/src/drivers/ao_mr25.c @@ -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 diff --git a/src/drivers/ao_ms5607.c b/src/drivers/ao_ms5607.c index ef31882e..261df67f 100644 --- a/src/drivers/ao_ms5607.c +++ b/src/drivers/ao_ms5607.c @@ -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 diff --git a/src/drivers/ao_ms5607.h b/src/drivers/ao_ms5607.h index b58178fd..18f99bf8 100644 --- a/src/drivers/ao_ms5607.h +++ b/src/drivers/ao_ms5607.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 diff --git a/src/drivers/ao_ms5607_convert.c b/src/drivers/ao_ms5607_convert.c index 4d412cbe..0e96f60b 100644 --- a/src/drivers/ao_ms5607_convert.c +++ b/src/drivers/ao_ms5607_convert.c @@ -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 diff --git a/src/drivers/ao_ms5607_convert_8051.c b/src/drivers/ao_ms5607_convert_8051.c index a74086d9..b7081107 100644 --- a/src/drivers/ao_ms5607_convert_8051.c +++ b/src/drivers/ao_ms5607_convert_8051.c @@ -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 diff --git a/src/drivers/ao_packet.c b/src/drivers/ao_packet.c index 18330ead..008af5db 100644 --- a/src/drivers/ao_packet.c +++ b/src/drivers/ao_packet.c @@ -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 diff --git a/src/drivers/ao_packet_master.c b/src/drivers/ao_packet_master.c index 2beda4cb..e63771e5 100644 --- a/src/drivers/ao_packet_master.c +++ b/src/drivers/ao_packet_master.c @@ -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 diff --git a/src/drivers/ao_packet_slave.c b/src/drivers/ao_packet_slave.c index 0872682f..b877128a 100644 --- a/src/drivers/ao_packet_slave.c +++ b/src/drivers/ao_packet_slave.c @@ -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 diff --git a/src/drivers/ao_pad.c b/src/drivers/ao_pad.c index 99a90e77..ffa833fe 100644 --- a/src/drivers/ao_pad.c +++ b/src/drivers/ao_pad.c @@ -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 diff --git a/src/drivers/ao_pad.h b/src/drivers/ao_pad.h index d77d105a..648d3005 100644 --- a/src/drivers/ao_pad.h +++ b/src/drivers/ao_pad.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 diff --git a/src/drivers/ao_pca9922.c b/src/drivers/ao_pca9922.c index 6d1b5fae..09f52a0e 100644 --- a/src/drivers/ao_pca9922.c +++ b/src/drivers/ao_pca9922.c @@ -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 diff --git a/src/drivers/ao_pwm.h b/src/drivers/ao_pwm.h index 2dd2ffd5..1751ebfd 100644 --- a/src/drivers/ao_pwm.h +++ b/src/drivers/ao_pwm.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 diff --git a/src/drivers/ao_pyro_slave.c b/src/drivers/ao_pyro_slave.c index f07c2cba..a293d929 100644 --- a/src/drivers/ao_pyro_slave.c +++ b/src/drivers/ao_pyro_slave.c @@ -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 diff --git a/src/drivers/ao_quadrature.c b/src/drivers/ao_quadrature.c index 0cdcc9fb..deecfb79 100644 --- a/src/drivers/ao_quadrature.c +++ b/src/drivers/ao_quadrature.c @@ -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 diff --git a/src/drivers/ao_quadrature.h b/src/drivers/ao_quadrature.h index d7dda682..a99e4cc5 100644 --- a/src/drivers/ao_quadrature.h +++ b/src/drivers/ao_quadrature.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 diff --git a/src/drivers/ao_radio_master.c b/src/drivers/ao_radio_master.c index 128fcf32..79e4b22b 100644 --- a/src/drivers/ao_radio_master.c +++ b/src/drivers/ao_radio_master.c @@ -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 diff --git a/src/drivers/ao_radio_slave.c b/src/drivers/ao_radio_slave.c index 9a0612e5..2f1dab29 100644 --- a/src/drivers/ao_radio_slave.c +++ b/src/drivers/ao_radio_slave.c @@ -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 diff --git a/src/drivers/ao_radio_spi.h b/src/drivers/ao_radio_spi.h index 2957f70d..9dccdd29 100644 --- a/src/drivers/ao_radio_spi.h +++ b/src/drivers/ao_radio_spi.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 diff --git a/src/drivers/ao_rfpa0133.c b/src/drivers/ao_rfpa0133.c index a98e261a..7ef32ef3 100644 --- a/src/drivers/ao_rfpa0133.c +++ b/src/drivers/ao_rfpa0133.c @@ -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 diff --git a/src/drivers/ao_rfpa0133.h b/src/drivers/ao_rfpa0133.h index 2ba7f699..793cdf76 100644 --- a/src/drivers/ao_rfpa0133.h +++ b/src/drivers/ao_rfpa0133.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 diff --git a/src/drivers/ao_science_slave.c b/src/drivers/ao_science_slave.c index 996e98d9..775318f9 100644 --- a/src/drivers/ao_science_slave.c +++ b/src/drivers/ao_science_slave.c @@ -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 diff --git a/src/drivers/ao_sdcard.c b/src/drivers/ao_sdcard.c index 47188ef3..4b17c5e3 100644 --- a/src/drivers/ao_sdcard.c +++ b/src/drivers/ao_sdcard.c @@ -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 diff --git a/src/drivers/ao_sdcard.h b/src/drivers/ao_sdcard.h index 50b70c73..8f794efc 100644 --- a/src/drivers/ao_sdcard.h +++ b/src/drivers/ao_sdcard.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 diff --git a/src/drivers/ao_servo.c b/src/drivers/ao_servo.c index b48a4112..78978e3e 100644 --- a/src/drivers/ao_servo.c +++ b/src/drivers/ao_servo.c @@ -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 diff --git a/src/drivers/ao_servo.h b/src/drivers/ao_servo.h index e1df347a..23059c44 100644 --- a/src/drivers/ao_servo.h +++ b/src/drivers/ao_servo.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 diff --git a/src/drivers/ao_seven_segment.c b/src/drivers/ao_seven_segment.c index f1339ee5..d2e1248f 100644 --- a/src/drivers/ao_seven_segment.c +++ b/src/drivers/ao_seven_segment.c @@ -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 diff --git a/src/drivers/ao_seven_segment.h b/src/drivers/ao_seven_segment.h index f997f3b5..bdac98c7 100644 --- a/src/drivers/ao_seven_segment.h +++ b/src/drivers/ao_seven_segment.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 diff --git a/src/drivers/ao_trng.c b/src/drivers/ao_trng.c index e69cd30b..d89cc81a 100644 --- a/src/drivers/ao_trng.c +++ b/src/drivers/ao_trng.c @@ -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 diff --git a/src/drivers/ao_trng.h b/src/drivers/ao_trng.h index 78577428..307a20fd 100644 --- a/src/drivers/ao_trng.h +++ b/src/drivers/ao_trng.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 diff --git a/src/drivers/ao_trng_send.c b/src/drivers/ao_trng_send.c index 4ac6ee5e..85034efd 100644 --- a/src/drivers/ao_trng_send.c +++ b/src/drivers/ao_trng_send.c @@ -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 @@ -96,18 +97,7 @@ ao_trng_send_raw(void)  #endif -/* Make sure there's at least 8 bits of variance in the samples */ -#define MIN_VARIANCE		(128 * 128) - -/* Make sure the signal is spread around a bit */ -#define MAX_VARIANCE		(512 * 512) - -#define ADD_STATS(value) do {			\ -		sum += (value);			\ -		sum2 += (value) * (value);	\ -	} while(0) - -#define VARIANCE(n)	((sum2 - (sum / (n) * sum)) / (n)) +static uint32_t	previous[AO_USB_IN_SIZE / sizeof (uint16_t)];  static int  ao_trng_get_cooked(uint16_t *buf) @@ -115,29 +105,24 @@ ao_trng_get_cooked(uint16_t *buf)  	uint16_t	i;  	uint16_t	t;  	uint32_t	*rnd = (uint32_t *) ao_adc_ring; -	int32_t 	sum, sum2, var; +	uint8_t		mismatch = 0; -	sum = sum2 = 0;  	t = ao_adc_get(AO_USB_IN_SIZE) >> 1;		/* one 16-bit value per output byte */  	for (i = 0; i < AO_USB_IN_SIZE / sizeof (uint16_t); i++) {  		uint32_t	v; -		uint16_t	v1, v2;  		/* Fetch two values in one operation */  		v = rnd[t]; +		if (v != previous[i]) { +			mismatch = 1; +			previous[i] = v; +		}  		t = (t + 1) & ((AO_ADC_RING_SIZE >> 1) - 1);  		*buf++ = ao_crc_in_32_out_16(v); - -		v1 = v; -		v2 = v >> 16; - -		ADD_STATS(v1); -		ADD_STATS(v2);  	}  	ao_adc_ack(AO_USB_IN_SIZE); -	var = VARIANCE(2 * AO_USB_IN_SIZE / sizeof (uint16_t)); -	return var >= MIN_VARIANCE && var <= MAX_VARIANCE; +	return mismatch;  }  #define AO_TRNG_START_WAIT	1024 diff --git a/src/drivers/ao_trng_send.h b/src/drivers/ao_trng_send.h index 83312d59..4a41637f 100644 --- a/src/drivers/ao_trng_send.h +++ b/src/drivers/ao_trng_send.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 diff --git a/src/drivers/ao_watchdog.c b/src/drivers/ao_watchdog.c index 096a5564..1a877fcb 100644 --- a/src/drivers/ao_watchdog.c +++ b/src/drivers/ao_watchdog.c @@ -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 diff --git a/src/drivers/ao_watchdog.h b/src/drivers/ao_watchdog.h index 73e1559d..e40475f6 100644 --- a/src/drivers/ao_watchdog.h +++ b/src/drivers/ao_watchdog.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 diff --git a/src/easymega-v1.0/ao_easymega.c b/src/easymega-v1.0/ao_easymega.c index e217c33c..9848c367 100644 --- a/src/easymega-v1.0/ao_easymega.c +++ b/src/easymega-v1.0/ao_easymega.c @@ -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 @@ -36,14 +37,14 @@ int  main(void)  {  	ao_clock_init(); -	 +  #if HAS_STACK_GUARD  	ao_mpu_init();  #endif  	ao_task_init();  	ao_led_init(LEDS_AVAILABLE); -	ao_led_on(AO_LED_GREEN); +	ao_led_on(LEDS_AVAILABLE);  	ao_timer_init();  	ao_i2c_init(); @@ -72,7 +73,7 @@ main(void)  	ao_eeprom_init();  	ao_storage_init(); -	 +  	ao_flight_init();  	ao_log_init();  	ao_report_init(); @@ -89,7 +90,8 @@ main(void)  #if HAS_SAMPLE_PROFILE  	ao_sample_profile_init();  #endif -	 + +	ao_led_off(LEDS_AVAILABLE);  	ao_start_scheduler();  	return 0;  } diff --git a/src/easymega-v1.0/ao_pins.h b/src/easymega-v1.0/ao_pins.h index 773e58d9..42a8b09c 100644 --- a/src/easymega-v1.0/ao_pins.h +++ b/src/easymega-v1.0/ao_pins.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 diff --git a/src/easymega-v1.0/flash-loader/ao_pins.h b/src/easymega-v1.0/flash-loader/ao_pins.h index 445289bf..858e5916 100644 --- a/src/easymega-v1.0/flash-loader/ao_pins.h +++ b/src/easymega-v1.0/flash-loader/ao_pins.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 diff --git a/src/easymini-v1.0/ao_easymini.c b/src/easymini-v1.0/ao_easymini.c index 97230b61..6025219d 100644 --- a/src/easymini-v1.0/ao_easymini.c +++ b/src/easymini-v1.0/ao_easymini.c @@ -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 diff --git a/src/easymini-v1.0/ao_pins.h b/src/easymini-v1.0/ao_pins.h index 1d794497..5983bb9e 100644 --- a/src/easymini-v1.0/ao_pins.h +++ b/src/easymini-v1.0/ao_pins.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 diff --git a/src/easymini-v1.0/flash-loader/ao_pins.h b/src/easymini-v1.0/flash-loader/ao_pins.h index 4330151d..9e02d365 100644 --- a/src/easymini-v1.0/flash-loader/ao_pins.h +++ b/src/easymini-v1.0/flash-loader/ao_pins.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 diff --git a/src/kalman/kalman.5c b/src/kalman/kalman.5c index 55fde04c..a91b28d8 100755 --- a/src/kalman/kalman.5c +++ b/src/kalman/kalman.5c @@ -5,7 +5,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 diff --git a/src/kalman/kalman_filter.5c b/src/kalman/kalman_filter.5c index efbbf1ab..b676a47b 100644 --- a/src/kalman/kalman_filter.5c +++ b/src/kalman/kalman_filter.5c @@ -5,7 +5,8 @@ load "matrix.5c"   *   * 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 diff --git a/src/kalman/kalman_micro.5c b/src/kalman/kalman_micro.5c index 1b080384..97404e17 100644 --- a/src/kalman/kalman_micro.5c +++ b/src/kalman/kalman_micro.5c @@ -5,7 +5,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 diff --git a/src/kalman/load_csv.5c b/src/kalman/load_csv.5c index 0086c6db..7c6c286e 100644 --- a/src/kalman/load_csv.5c +++ b/src/kalman/load_csv.5c @@ -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 diff --git a/src/kalman/matrix.5c b/src/kalman/matrix.5c index 667648f5..99a522db 100644 --- a/src/kalman/matrix.5c +++ b/src/kalman/matrix.5c @@ -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 diff --git a/src/kernel/ao.h b/src/kernel/ao.h index 27a16606..fb41d7a9 100644 --- a/src/kernel/ao.h +++ b/src/kernel/ao.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 @@ -640,6 +641,12 @@ void  ao_radio_rdf_abort(void);  void +ao_radio_test_on(void); + +void +ao_radio_test_off(void); + +void  ao_radio_init(void);  /* @@ -666,6 +673,7 @@ extern __xdata union ao_monitor ao_monitor_ring[AO_MONITOR_RING];  #define ao_monitor_ring_next(n)	(((n) + 1) & (AO_MONITOR_RING - 1))  #define ao_monitor_ring_prev(n)	(((n) - 1) & (AO_MONITOR_RING - 1)) +extern __xdata uint8_t ao_monitoring_mutex;  extern __data uint8_t ao_monitoring;  extern __data uint8_t ao_monitor_head; diff --git a/src/kernel/ao_adc.h b/src/kernel/ao_adc.h index 373db1c4..ffa6f07c 100644 --- a/src/kernel/ao_adc.h +++ b/src/kernel/ao_adc.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 diff --git a/src/kernel/ao_aes.h b/src/kernel/ao_aes.h index c47bc2db..5ae98424 100644 --- a/src/kernel/ao_aes.h +++ b/src/kernel/ao_aes.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 diff --git a/src/kernel/ao_balloon.c b/src/kernel/ao_balloon.c index 904a9c08..47b69e25 100644 --- a/src/kernel/ao_balloon.c +++ b/src/kernel/ao_balloon.c @@ -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 diff --git a/src/kernel/ao_beep.h b/src/kernel/ao_beep.h index 9d6ecf27..085dd5b1 100644 --- a/src/kernel/ao_beep.h +++ b/src/kernel/ao_beep.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 diff --git a/src/kernel/ao_boot.h b/src/kernel/ao_boot.h index 62392d25..0977cf65 100644 --- a/src/kernel/ao_boot.h +++ b/src/kernel/ao_boot.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 diff --git a/src/kernel/ao_btm.h b/src/kernel/ao_btm.h index 484e5d7f..f67dc9f7 100644 --- a/src/kernel/ao_btm.h +++ b/src/kernel/ao_btm.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 diff --git a/src/kernel/ao_cmd.c b/src/kernel/ao_cmd.c index d2f583ef..10716afd 100644 --- a/src/kernel/ao_cmd.c +++ b/src/kernel/ao_cmd.c @@ -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 @@ -393,11 +394,17 @@ ao_cmd(void)  			if (func)  				break;  		} +#if HAS_MONITOR +		ao_mutex_get(&ao_monitoring_mutex); +#endif  		if (func)  			(*func)();  		else  			ao_cmd_status = ao_cmd_syntax_error;  		report(); +#if HAS_MONITOR +		ao_mutex_put(&ao_monitoring_mutex); +#endif  	}  } diff --git a/src/kernel/ao_companion.h b/src/kernel/ao_companion.h index 035325a3..4c161455 100644 --- a/src/kernel/ao_companion.h +++ b/src/kernel/ao_companion.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 diff --git a/src/kernel/ao_config.c b/src/kernel/ao_config.c index f95ca893..5dda1c85 100644 --- a/src/kernel/ao_config.c +++ b/src/kernel/ao_config.c @@ -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 diff --git a/src/kernel/ao_config.h b/src/kernel/ao_config.h index 3c73ea49..f730c73c 100644 --- a/src/kernel/ao_config.h +++ b/src/kernel/ao_config.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 diff --git a/src/kernel/ao_convert.c b/src/kernel/ao_convert.c index db1f2301..1cd62345 100644 --- a/src/kernel/ao_convert.c +++ b/src/kernel/ao_convert.c @@ -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 diff --git a/src/kernel/ao_convert_pa.c b/src/kernel/ao_convert_pa.c index 410815b6..8ae0e7c9 100644 --- a/src/kernel/ao_convert_pa.c +++ b/src/kernel/ao_convert_pa.c @@ -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 diff --git a/src/kernel/ao_convert_pa_test.c b/src/kernel/ao_convert_pa_test.c index 95422862..e0ee2928 100644 --- a/src/kernel/ao_convert_pa_test.c +++ b/src/kernel/ao_convert_pa_test.c @@ -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 diff --git a/src/kernel/ao_convert_test.c b/src/kernel/ao_convert_test.c index 87e76841..c8debbc5 100644 --- a/src/kernel/ao_convert_test.c +++ b/src/kernel/ao_convert_test.c @@ -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 diff --git a/src/kernel/ao_convert_volt.c b/src/kernel/ao_convert_volt.c index f697e748..5afedfa5 100644 --- a/src/kernel/ao_convert_volt.c +++ b/src/kernel/ao_convert_volt.c @@ -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 diff --git a/src/kernel/ao_data.c b/src/kernel/ao_data.c index 6a3d02a1..35d42b8f 100644 --- a/src/kernel/ao_data.c +++ b/src/kernel/ao_data.c @@ -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 diff --git a/src/kernel/ao_data.h b/src/kernel/ao_data.h index 6ee0965d..d62852ef 100644 --- a/src/kernel/ao_data.h +++ b/src/kernel/ao_data.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 diff --git a/src/kernel/ao_dbg.h b/src/kernel/ao_dbg.h index 181e6ec2..abf9e6db 100644 --- a/src/kernel/ao_dbg.h +++ b/src/kernel/ao_dbg.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 diff --git a/src/kernel/ao_debounce.c b/src/kernel/ao_debounce.c index b9d67729..42efc2dd 100644 --- a/src/kernel/ao_debounce.c +++ b/src/kernel/ao_debounce.c @@ -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 diff --git a/src/kernel/ao_debounce.h b/src/kernel/ao_debounce.h index 19c620f5..d6ac21f0 100644 --- a/src/kernel/ao_debounce.h +++ b/src/kernel/ao_debounce.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 diff --git a/src/kernel/ao_distance.c b/src/kernel/ao_distance.c index 5654182a..481a53c1 100644 --- a/src/kernel/ao_distance.c +++ b/src/kernel/ao_distance.c @@ -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 diff --git a/src/kernel/ao_distance.h b/src/kernel/ao_distance.h index 6762434e..63f43a7b 100644 --- a/src/kernel/ao_distance.h +++ b/src/kernel/ao_distance.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 diff --git a/src/kernel/ao_ee_fake.c b/src/kernel/ao_ee_fake.c index 7fcfcab0..84c13000 100644 --- a/src/kernel/ao_ee_fake.c +++ b/src/kernel/ao_ee_fake.c @@ -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 diff --git a/src/kernel/ao_eeprom.h b/src/kernel/ao_eeprom.h index 915522bf..bd8b6725 100644 --- a/src/kernel/ao_eeprom.h +++ b/src/kernel/ao_eeprom.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 diff --git a/src/kernel/ao_fake_flight.c b/src/kernel/ao_fake_flight.c index 11329bb9..5880cf2b 100644 --- a/src/kernel/ao_fake_flight.c +++ b/src/kernel/ao_fake_flight.c @@ -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 diff --git a/src/kernel/ao_fake_flight.h b/src/kernel/ao_fake_flight.h index 172fc589..5e7d1572 100644 --- a/src/kernel/ao_fake_flight.h +++ b/src/kernel/ao_fake_flight.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 diff --git a/src/kernel/ao_fast_timer.h b/src/kernel/ao_fast_timer.h index 90fb3930..3b419180 100644 --- a/src/kernel/ao_fast_timer.h +++ b/src/kernel/ao_fast_timer.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 diff --git a/src/kernel/ao_fec.h b/src/kernel/ao_fec.h index 618756c1..9ccc3af1 100644 --- a/src/kernel/ao_fec.h +++ b/src/kernel/ao_fec.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 diff --git a/src/kernel/ao_fec_rx.c b/src/kernel/ao_fec_rx.c index c4f5559a..8e4a8522 100644 --- a/src/kernel/ao_fec_rx.c +++ b/src/kernel/ao_fec_rx.c @@ -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 diff --git a/src/kernel/ao_fec_tx.c b/src/kernel/ao_fec_tx.c index 4941d745..3feb1301 100644 --- a/src/kernel/ao_fec_tx.c +++ b/src/kernel/ao_fec_tx.c @@ -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 diff --git a/src/kernel/ao_flight.c b/src/kernel/ao_flight.c index 9031a54a..50f2b68f 100644 --- a/src/kernel/ao_flight.c +++ b/src/kernel/ao_flight.c @@ -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 diff --git a/src/kernel/ao_flight.h b/src/kernel/ao_flight.h index 01d21c11..6894fe59 100644 --- a/src/kernel/ao_flight.h +++ b/src/kernel/ao_flight.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 diff --git a/src/kernel/ao_flight_nano.c b/src/kernel/ao_flight_nano.c index 406d81ad..d849dc64 100644 --- a/src/kernel/ao_flight_nano.c +++ b/src/kernel/ao_flight_nano.c @@ -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 diff --git a/src/kernel/ao_forward.c b/src/kernel/ao_forward.c index 2a937183..721b52d0 100644 --- a/src/kernel/ao_forward.c +++ b/src/kernel/ao_forward.c @@ -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 diff --git a/src/kernel/ao_forward.h b/src/kernel/ao_forward.h index 1897dc08..2fe28f66 100644 --- a/src/kernel/ao_forward.h +++ b/src/kernel/ao_forward.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 diff --git a/src/kernel/ao_freq.c b/src/kernel/ao_freq.c index 12496f6f..6478dae2 100644 --- a/src/kernel/ao_freq.c +++ b/src/kernel/ao_freq.c @@ -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 diff --git a/src/kernel/ao_gps_print.c b/src/kernel/ao_gps_print.c index 6d9ee346..b1183bad 100644 --- a/src/kernel/ao_gps_print.c +++ b/src/kernel/ao_gps_print.c @@ -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 diff --git a/src/kernel/ao_gps_report.c b/src/kernel/ao_gps_report.c index 7ef98a97..39688fea 100644 --- a/src/kernel/ao_gps_report.c +++ b/src/kernel/ao_gps_report.c @@ -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 diff --git a/src/kernel/ao_gps_report_mega.c b/src/kernel/ao_gps_report_mega.c index f3711fb1..8a298655 100644 --- a/src/kernel/ao_gps_report_mega.c +++ b/src/kernel/ao_gps_report_mega.c @@ -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 diff --git a/src/kernel/ao_gps_report_metrum.c b/src/kernel/ao_gps_report_metrum.c index 8ce074fe..508f1519 100644 --- a/src/kernel/ao_gps_report_metrum.c +++ b/src/kernel/ao_gps_report_metrum.c @@ -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 diff --git a/src/kernel/ao_gps_show.c b/src/kernel/ao_gps_show.c index e45cd795..ec197769 100644 --- a/src/kernel/ao_gps_show.c +++ b/src/kernel/ao_gps_show.c @@ -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 diff --git a/src/kernel/ao_host.h b/src/kernel/ao_host.h index 6eb752c9..a7fa5ec2 100644 --- a/src/kernel/ao_host.h +++ b/src/kernel/ao_host.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 diff --git a/src/kernel/ao_ignite.c b/src/kernel/ao_ignite.c index 823d003c..52d9d77e 100644 --- a/src/kernel/ao_ignite.c +++ b/src/kernel/ao_ignite.c @@ -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 diff --git a/src/kernel/ao_int64.c b/src/kernel/ao_int64.c index ca75751b..fdea61c0 100644 --- a/src/kernel/ao_int64.c +++ b/src/kernel/ao_int64.c @@ -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 diff --git a/src/kernel/ao_int64.h b/src/kernel/ao_int64.h index b16db58c..11c16404 100644 --- a/src/kernel/ao_int64.h +++ b/src/kernel/ao_int64.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 diff --git a/src/kernel/ao_kalman.c b/src/kernel/ao_kalman.c index 7b0f8145..69a1b3de 100644 --- a/src/kernel/ao_kalman.c +++ b/src/kernel/ao_kalman.c @@ -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 diff --git a/src/kernel/ao_lcd.h b/src/kernel/ao_lcd.h index f7e1391a..3ed8c64c 100644 --- a/src/kernel/ao_lcd.h +++ b/src/kernel/ao_lcd.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 diff --git a/src/kernel/ao_led.h b/src/kernel/ao_led.h index d9a0914a..7de09237 100644 --- a/src/kernel/ao_led.h +++ b/src/kernel/ao_led.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 diff --git a/src/kernel/ao_list.h b/src/kernel/ao_list.h index 8a6fa4d9..e2df6885 100644 --- a/src/kernel/ao_list.h +++ b/src/kernel/ao_list.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 diff --git a/src/kernel/ao_log.c b/src/kernel/ao_log.c index 40a96ef7..0589b4b0 100644 --- a/src/kernel/ao_log.c +++ b/src/kernel/ao_log.c @@ -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 diff --git a/src/kernel/ao_log.h b/src/kernel/ao_log.h index fdd428c2..13eb05bf 100644 --- a/src/kernel/ao_log.h +++ b/src/kernel/ao_log.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 diff --git a/src/kernel/ao_log_big.c b/src/kernel/ao_log_big.c index 8f57bf75..e32abd1a 100644 --- a/src/kernel/ao_log_big.c +++ b/src/kernel/ao_log_big.c @@ -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 diff --git a/src/kernel/ao_log_gps.c b/src/kernel/ao_log_gps.c index 7643091c..02551169 100644 --- a/src/kernel/ao_log_gps.c +++ b/src/kernel/ao_log_gps.c @@ -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 diff --git a/src/kernel/ao_log_gps.h b/src/kernel/ao_log_gps.h index a9e8c831..cc947d6e 100644 --- a/src/kernel/ao_log_gps.h +++ b/src/kernel/ao_log_gps.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 diff --git a/src/kernel/ao_log_mega.c b/src/kernel/ao_log_mega.c index cb83be4b..a0212198 100644 --- a/src/kernel/ao_log_mega.c +++ b/src/kernel/ao_log_mega.c @@ -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 diff --git a/src/kernel/ao_log_metrum.c b/src/kernel/ao_log_metrum.c index 08e7b8c4..154b1740 100644 --- a/src/kernel/ao_log_metrum.c +++ b/src/kernel/ao_log_metrum.c @@ -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 diff --git a/src/kernel/ao_log_micro.c b/src/kernel/ao_log_micro.c index aef78def..aa0f5c76 100644 --- a/src/kernel/ao_log_micro.c +++ b/src/kernel/ao_log_micro.c @@ -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 diff --git a/src/kernel/ao_log_micro.h b/src/kernel/ao_log_micro.h index 976852ee..ec5cf3ed 100644 --- a/src/kernel/ao_log_micro.h +++ b/src/kernel/ao_log_micro.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 diff --git a/src/kernel/ao_log_mini.c b/src/kernel/ao_log_mini.c index 844f38aa..d5735cdc 100644 --- a/src/kernel/ao_log_mini.c +++ b/src/kernel/ao_log_mini.c @@ -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 diff --git a/src/kernel/ao_log_single.c b/src/kernel/ao_log_single.c index 3f6235a6..63768e1a 100644 --- a/src/kernel/ao_log_single.c +++ b/src/kernel/ao_log_single.c @@ -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 diff --git a/src/kernel/ao_log_telem.c b/src/kernel/ao_log_telem.c index 095aca37..1305a84d 100644 --- a/src/kernel/ao_log_telem.c +++ b/src/kernel/ao_log_telem.c @@ -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 diff --git a/src/kernel/ao_log_telescience.c b/src/kernel/ao_log_telescience.c index 002a10bd..3f514f18 100644 --- a/src/kernel/ao_log_telescience.c +++ b/src/kernel/ao_log_telescience.c @@ -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 diff --git a/src/kernel/ao_log_tiny.c b/src/kernel/ao_log_tiny.c index 67767dc9..7769b7b5 100644 --- a/src/kernel/ao_log_tiny.c +++ b/src/kernel/ao_log_tiny.c @@ -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 diff --git a/src/kernel/ao_microflight.c b/src/kernel/ao_microflight.c index f7521f21..f415420d 100644 --- a/src/kernel/ao_microflight.c +++ b/src/kernel/ao_microflight.c @@ -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 diff --git a/src/kernel/ao_microkalman.c b/src/kernel/ao_microkalman.c index 75a29cc4..ff543cc4 100644 --- a/src/kernel/ao_microkalman.c +++ b/src/kernel/ao_microkalman.c @@ -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 diff --git a/src/kernel/ao_monitor.c b/src/kernel/ao_monitor.c index cba0d80a..7cbee288 100644 --- a/src/kernel/ao_monitor.c +++ b/src/kernel/ao_monitor.c @@ -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 @@ -35,6 +36,7 @@  #error Must define AO_MONITOR_LED  #endif +__xdata uint8_t ao_monitoring_mutex;  __data uint8_t ao_monitoring;  static __data uint8_t ao_monitor_disabled;  static __data uint8_t ao_internal_monitoring; @@ -240,6 +242,7 @@ ao_monitor_put(void)  			printf ("rx cleanup: %d\n", ao_rx_done_tick - ao_fec_decode_end);  		}  #endif +			ao_mutex_get(&ao_monitoring_mutex);  			printf("TELEM ");  			hex((uint8_t) (ao_monitoring + 2));  			sum = 0x5a; @@ -250,6 +253,7 @@ ao_monitor_put(void)  			}  			hex(sum);  			putchar ('\n'); +			ao_mutex_put(&ao_monitoring_mutex);  #if HAS_RSSI  			if (recv_raw.packet[ao_monitoring + 1] & AO_RADIO_STATUS_CRC_OK) {  				rssi = AO_RSSI_FROM_RADIO(recv_raw.packet[ao_monitoring]); diff --git a/src/kernel/ao_mutex.c b/src/kernel/ao_mutex.c index a36fe939..ff73e3bc 100644 --- a/src/kernel/ao_mutex.c +++ b/src/kernel/ao_mutex.c @@ -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 diff --git a/src/kernel/ao_notask.c b/src/kernel/ao_notask.c index 6f967e6d..00fe1ed6 100644 --- a/src/kernel/ao_notask.c +++ b/src/kernel/ao_notask.c @@ -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 diff --git a/src/kernel/ao_notask.h b/src/kernel/ao_notask.h index 6b6b5bb8..a4446726 100644 --- a/src/kernel/ao_notask.h +++ b/src/kernel/ao_notask.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 diff --git a/src/kernel/ao_packet.h b/src/kernel/ao_packet.h index 136609c3..9d99b0e6 100644 --- a/src/kernel/ao_packet.h +++ b/src/kernel/ao_packet.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 diff --git a/src/kernel/ao_panic.c b/src/kernel/ao_panic.c index e280f98c..3feecd5a 100644 --- a/src/kernel/ao_panic.c +++ b/src/kernel/ao_panic.c @@ -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 diff --git a/src/kernel/ao_power.c b/src/kernel/ao_power.c index bead5944..bf59ab53 100644 --- a/src/kernel/ao_power.c +++ b/src/kernel/ao_power.c @@ -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 diff --git a/src/kernel/ao_power.h b/src/kernel/ao_power.h index 98a8c1c7..304c45a4 100644 --- a/src/kernel/ao_power.h +++ b/src/kernel/ao_power.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 diff --git a/src/kernel/ao_product.c b/src/kernel/ao_product.c index 3a829b3a..c4df9f26 100644 --- a/src/kernel/ao_product.c +++ b/src/kernel/ao_product.c @@ -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 diff --git a/src/kernel/ao_pyro.c b/src/kernel/ao_pyro.c index 43e73de4..c9920ab3 100644 --- a/src/kernel/ao_pyro.c +++ b/src/kernel/ao_pyro.c @@ -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 diff --git a/src/kernel/ao_pyro.h b/src/kernel/ao_pyro.h index 0fde725a..a730ef19 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 diff --git a/src/kernel/ao_quaternion.h b/src/kernel/ao_quaternion.h index 044f1607..651083fc 100644 --- a/src/kernel/ao_quaternion.h +++ b/src/kernel/ao_quaternion.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 diff --git a/src/kernel/ao_radio_cmac.c b/src/kernel/ao_radio_cmac.c index b6835346..92b365a2 100644 --- a/src/kernel/ao_radio_cmac.c +++ b/src/kernel/ao_radio_cmac.c @@ -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 diff --git a/src/kernel/ao_radio_cmac.h b/src/kernel/ao_radio_cmac.h index e86f31e9..74fe8c60 100644 --- a/src/kernel/ao_radio_cmac.h +++ b/src/kernel/ao_radio_cmac.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 diff --git a/src/kernel/ao_radio_cmac_cmd.c b/src/kernel/ao_radio_cmac_cmd.c index 64410921..6d29f392 100644 --- a/src/kernel/ao_radio_cmac_cmd.c +++ b/src/kernel/ao_radio_cmac_cmd.c @@ -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 diff --git a/src/kernel/ao_radio_cmac_cmd.h b/src/kernel/ao_radio_cmac_cmd.h index 6b8782de..ef89c5b7 100644 --- a/src/kernel/ao_radio_cmac_cmd.h +++ b/src/kernel/ao_radio_cmac_cmd.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 diff --git a/src/kernel/ao_report.c b/src/kernel/ao_report.c index f4253b3d..6592d616 100644 --- a/src/kernel/ao_report.c +++ b/src/kernel/ao_report.c @@ -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 diff --git a/src/kernel/ao_report_micro.c b/src/kernel/ao_report_micro.c index 0e8e287f..af68457d 100644 --- a/src/kernel/ao_report_micro.c +++ b/src/kernel/ao_report_micro.c @@ -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 diff --git a/src/kernel/ao_rssi.c b/src/kernel/ao_rssi.c index 793b190b..66fb8b57 100644 --- a/src/kernel/ao_rssi.c +++ b/src/kernel/ao_rssi.c @@ -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 diff --git a/src/kernel/ao_sample.c b/src/kernel/ao_sample.c index 29bf2bf6..90ea07ad 100644 --- a/src/kernel/ao_sample.c +++ b/src/kernel/ao_sample.c @@ -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 diff --git a/src/kernel/ao_sample.h b/src/kernel/ao_sample.h index 2ec998bd..da40187b 100644 --- a/src/kernel/ao_sample.h +++ b/src/kernel/ao_sample.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 diff --git a/src/kernel/ao_sample_profile.c b/src/kernel/ao_sample_profile.c index d3743d12..4819a161 100644 --- a/src/kernel/ao_sample_profile.c +++ b/src/kernel/ao_sample_profile.c @@ -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 diff --git a/src/kernel/ao_sample_profile.h b/src/kernel/ao_sample_profile.h index dbc29d3d..c633779d 100644 --- a/src/kernel/ao_sample_profile.h +++ b/src/kernel/ao_sample_profile.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 diff --git a/src/kernel/ao_send_packet.c b/src/kernel/ao_send_packet.c index 66315d22..c8a1d46e 100644 --- a/src/kernel/ao_send_packet.c +++ b/src/kernel/ao_send_packet.c @@ -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 diff --git a/src/kernel/ao_send_packet.h b/src/kernel/ao_send_packet.h index 526f7b55..61010937 100644 --- a/src/kernel/ao_send_packet.h +++ b/src/kernel/ao_send_packet.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 diff --git a/src/kernel/ao_serial.h b/src/kernel/ao_serial.h index e21643ac..ef3e93d7 100644 --- a/src/kernel/ao_serial.h +++ b/src/kernel/ao_serial.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 diff --git a/src/kernel/ao_sqrt.c b/src/kernel/ao_sqrt.c index 3a550eaa..ca4678cf 100644 --- a/src/kernel/ao_sqrt.c +++ b/src/kernel/ao_sqrt.c @@ -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 diff --git a/src/kernel/ao_state.c b/src/kernel/ao_state.c index ed197aa5..08e790be 100644 --- a/src/kernel/ao_state.c +++ b/src/kernel/ao_state.c @@ -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 diff --git a/src/kernel/ao_stdio.c b/src/kernel/ao_stdio.c index 1d65fcf5..b79d465a 100644 --- a/src/kernel/ao_stdio.c +++ b/src/kernel/ao_stdio.c @@ -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 diff --git a/src/kernel/ao_storage.c b/src/kernel/ao_storage.c index 6eddae7f..bee9293e 100644 --- a/src/kernel/ao_storage.c +++ b/src/kernel/ao_storage.c @@ -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 diff --git a/src/kernel/ao_storage.h b/src/kernel/ao_storage.h index 6cc6fcb7..59b137ad 100644 --- a/src/kernel/ao_storage.h +++ b/src/kernel/ao_storage.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 diff --git a/src/kernel/ao_task.c b/src/kernel/ao_task.c index cf0b58ed..e8a092aa 100644 --- a/src/kernel/ao_task.c +++ b/src/kernel/ao_task.c @@ -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 diff --git a/src/kernel/ao_task.h b/src/kernel/ao_task.h index 0e353fe8..f1dbd654 100644 --- a/src/kernel/ao_task.h +++ b/src/kernel/ao_task.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 diff --git a/src/kernel/ao_telem.h b/src/kernel/ao_telem.h index 1a8da291..1989a02d 100644 --- a/src/kernel/ao_telem.h +++ b/src/kernel/ao_telem.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 diff --git a/src/kernel/ao_telemetry.c b/src/kernel/ao_telemetry.c index 16363f75..15085bf4 100644 --- a/src/kernel/ao_telemetry.c +++ b/src/kernel/ao_telemetry.c @@ -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 @@ -293,6 +294,7 @@ ao_send_mini(void)  static __pdata int8_t ao_telemetry_config_max;  static __pdata int8_t ao_telemetry_config_cur; +static __pdata uint16_t ao_telemetry_flight_number;  static void  ao_send_configuration(void) @@ -301,11 +303,7 @@ ao_send_configuration(void)  	{  		telemetry.generic.type = AO_TELEMETRY_CONFIGURATION;  		telemetry.configuration.device = AO_idProduct_NUMBER; -#if HAS_LOG -		telemetry.configuration.flight = ao_log_full() ? 0 : ao_flight_number; -#else -		telemetry.configuration.flight = ao_flight_number; -#endif +		telemetry.configuration.flight = ao_telemetry_flight_number;  		telemetry.configuration.config_major = AO_CONFIG_MAJOR;  		telemetry.configuration.config_minor = AO_CONFIG_MINOR;  #if AO_idProduct_NUMBER == 0x25 && HAS_ADC @@ -405,6 +403,11 @@ ao_telemetry(void)  	while (!ao_flight_number)  		ao_sleep(&ao_flight_number); +	ao_telemetry_flight_number = ao_flight_number; +#if HAS_LOG +	if (ao_log_full()) +		ao_telemetry_flight_number = 0; +#endif  	telemetry.generic.serial = ao_serial_number;  	for (;;) {  		while (ao_telemetry_interval == 0) diff --git a/src/kernel/ao_telemetry.h b/src/kernel/ao_telemetry.h index 672d2317..c0f5e3c5 100644 --- a/src/kernel/ao_telemetry.h +++ b/src/kernel/ao_telemetry.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 diff --git a/src/kernel/ao_tracker.c b/src/kernel/ao_tracker.c index 962f145d..4abd309a 100644 --- a/src/kernel/ao_tracker.c +++ b/src/kernel/ao_tracker.c @@ -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 diff --git a/src/kernel/ao_tracker.h b/src/kernel/ao_tracker.h index 78c40cb4..7d534339 100644 --- a/src/kernel/ao_tracker.h +++ b/src/kernel/ao_tracker.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 diff --git a/src/kernel/ao_usb.h b/src/kernel/ao_usb.h index 8f3e7813..cdea5178 100644 --- a/src/kernel/ao_usb.h +++ b/src/kernel/ao_usb.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 diff --git a/src/lpc/altos-loader.ld b/src/lpc/altos-loader.ld index 9df6e456..84d7610c 100644 --- a/src/lpc/altos-loader.ld +++ b/src/lpc/altos-loader.ld @@ -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 diff --git a/src/lpc/altos-standalone.ld b/src/lpc/altos-standalone.ld index 032406f8..db53dcaf 100644 --- a/src/lpc/altos-standalone.ld +++ b/src/lpc/altos-standalone.ld @@ -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 diff --git a/src/lpc/altos.ld b/src/lpc/altos.ld index 00d4f18a..e6a6a7ed 100644 --- a/src/lpc/altos.ld +++ b/src/lpc/altos.ld @@ -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 diff --git a/src/lpc/ao_adc_lpc.c b/src/lpc/ao_adc_lpc.c index b24163ee..26a5ea08 100644 --- a/src/lpc/ao_adc_lpc.c +++ b/src/lpc/ao_adc_lpc.c @@ -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 diff --git a/src/lpc/ao_arch.h b/src/lpc/ao_arch.h index 42faf06f..da21dc9d 100644 --- a/src/lpc/ao_arch.h +++ b/src/lpc/ao_arch.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 diff --git a/src/lpc/ao_arch_funcs.h b/src/lpc/ao_arch_funcs.h index dbb41538..5fc0f680 100644 --- a/src/lpc/ao_arch_funcs.h +++ b/src/lpc/ao_arch_funcs.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 diff --git a/src/lpc/ao_beep_lpc.c b/src/lpc/ao_beep_lpc.c index eb9132b8..b1211752 100644 --- a/src/lpc/ao_beep_lpc.c +++ b/src/lpc/ao_beep_lpc.c @@ -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 diff --git a/src/lpc/ao_boot_chain.c b/src/lpc/ao_boot_chain.c index 9e45ba27..0d0bb91c 100644 --- a/src/lpc/ao_boot_chain.c +++ b/src/lpc/ao_boot_chain.c @@ -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 diff --git a/src/lpc/ao_boot_pin.c b/src/lpc/ao_boot_pin.c index 51ecc0a9..e3c7d0c1 100644 --- a/src/lpc/ao_boot_pin.c +++ b/src/lpc/ao_boot_pin.c @@ -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 diff --git a/src/lpc/ao_exti.h b/src/lpc/ao_exti.h index e8599eb4..75f2cf5f 100644 --- a/src/lpc/ao_exti.h +++ b/src/lpc/ao_exti.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 diff --git a/src/lpc/ao_exti_lpc.c b/src/lpc/ao_exti_lpc.c index fdb6a1ca..193f4547 100644 --- a/src/lpc/ao_exti_lpc.c +++ b/src/lpc/ao_exti_lpc.c @@ -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 diff --git a/src/lpc/ao_fast_timer_lpc.c b/src/lpc/ao_fast_timer_lpc.c index c4f26fc4..ce434139 100644 --- a/src/lpc/ao_fast_timer_lpc.c +++ b/src/lpc/ao_fast_timer_lpc.c @@ -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 diff --git a/src/lpc/ao_flash.h b/src/lpc/ao_flash.h index aaf66b39..fe9761a9 100644 --- a/src/lpc/ao_flash.h +++ b/src/lpc/ao_flash.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 diff --git a/src/lpc/ao_flash_loader_lpc.c b/src/lpc/ao_flash_loader_lpc.c index 2ab548cf..47e2abc6 100644 --- a/src/lpc/ao_flash_loader_lpc.c +++ b/src/lpc/ao_flash_loader_lpc.c @@ -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 diff --git a/src/lpc/ao_flash_lpc.c b/src/lpc/ao_flash_lpc.c index 5a31f39f..cb1a0606 100644 --- a/src/lpc/ao_flash_lpc.c +++ b/src/lpc/ao_flash_lpc.c @@ -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 diff --git a/src/lpc/ao_flash_lpc_pins.h b/src/lpc/ao_flash_lpc_pins.h index e2243d5c..4330dfd7 100644 --- a/src/lpc/ao_flash_lpc_pins.h +++ b/src/lpc/ao_flash_lpc_pins.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 diff --git a/src/lpc/ao_interrupt.c b/src/lpc/ao_interrupt.c index 3318db2b..3e0119c6 100644 --- a/src/lpc/ao_interrupt.c +++ b/src/lpc/ao_interrupt.c @@ -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 diff --git a/src/lpc/ao_led_lpc.c b/src/lpc/ao_led_lpc.c index a0b293b9..2d2c3972 100644 --- a/src/lpc/ao_led_lpc.c +++ b/src/lpc/ao_led_lpc.c @@ -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 diff --git a/src/lpc/ao_romconfig.c b/src/lpc/ao_romconfig.c index cbb922ec..4e7bab8d 100644 --- a/src/lpc/ao_romconfig.c +++ b/src/lpc/ao_romconfig.c @@ -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 diff --git a/src/lpc/ao_serial_lpc.c b/src/lpc/ao_serial_lpc.c index b0d5fcbc..0011744d 100644 --- a/src/lpc/ao_serial_lpc.c +++ b/src/lpc/ao_serial_lpc.c @@ -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 diff --git a/src/lpc/ao_spi_lpc.c b/src/lpc/ao_spi_lpc.c index f091c89c..a8d4cda9 100644 --- a/src/lpc/ao_spi_lpc.c +++ b/src/lpc/ao_spi_lpc.c @@ -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 diff --git a/src/lpc/ao_timer_lpc.c b/src/lpc/ao_timer_lpc.c index 623559eb..166e2f15 100644 --- a/src/lpc/ao_timer_lpc.c +++ b/src/lpc/ao_timer_lpc.c @@ -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 diff --git a/src/lpc/ao_usb_lpc.c b/src/lpc/ao_usb_lpc.c index 3b3226ad..5c13eb4b 100644 --- a/src/lpc/ao_usb_lpc.c +++ b/src/lpc/ao_usb_lpc.c @@ -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 diff --git a/src/lpc/lpc.h b/src/lpc/lpc.h index 40d412d0..38dd2aee 100644 --- a/src/lpc/lpc.h +++ b/src/lpc/lpc.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 diff --git a/src/lpcxpresso/ao_demo.c b/src/lpcxpresso/ao_demo.c index 0c931611..568ebd18 100644 --- a/src/lpcxpresso/ao_demo.c +++ b/src/lpcxpresso/ao_demo.c @@ -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 diff --git a/src/lpcxpresso/ao_pins.h b/src/lpcxpresso/ao_pins.h index 0ffc2fad..1bfc83bf 100644 --- a/src/lpcxpresso/ao_pins.h +++ b/src/lpcxpresso/ao_pins.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 diff --git a/src/math/math.h b/src/math/math.h index 97dd74cf..3a279663 100644 --- a/src/math/math.h +++ b/src/math/math.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 diff --git a/src/megadongle-v0.1/ao_megadongle.c b/src/megadongle-v0.1/ao_megadongle.c index 68d6de60..e6821a3e 100644 --- a/src/megadongle-v0.1/ao_megadongle.c +++ b/src/megadongle-v0.1/ao_megadongle.c @@ -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 diff --git a/src/megadongle-v0.1/ao_pins.h b/src/megadongle-v0.1/ao_pins.h index 9edd91f4..4d3ad4dd 100644 --- a/src/megadongle-v0.1/ao_pins.h +++ b/src/megadongle-v0.1/ao_pins.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 diff --git a/src/megadongle-v0.1/flash-loader/ao_pins.h b/src/megadongle-v0.1/flash-loader/ao_pins.h index 1af92f13..2b18f8e5 100644 --- a/src/megadongle-v0.1/flash-loader/ao_pins.h +++ b/src/megadongle-v0.1/flash-loader/ao_pins.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 diff --git a/src/microkite/ao_pins.h b/src/microkite/ao_pins.h index 346b63a1..396b57e3 100644 --- a/src/microkite/ao_pins.h +++ b/src/microkite/ao_pins.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 diff --git a/src/micropeak/ao_pins.h b/src/micropeak/ao_pins.h index 63e9cb1b..7cfbca49 100644 --- a/src/micropeak/ao_pins.h +++ b/src/micropeak/ao_pins.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 diff --git a/src/micropeak/micro-log-parse.5c b/src/micropeak/micro-log-parse.5c index e1548fb0..c16ba0b4 100644 --- a/src/micropeak/micro-log-parse.5c +++ b/src/micropeak/micro-log-parse.5c @@ -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 diff --git a/src/microsplash/ao_pins.h b/src/microsplash/ao_pins.h index 37885ec2..50a99346 100644 --- a/src/microsplash/ao_pins.h +++ b/src/microsplash/ao_pins.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 diff --git a/src/nanopeak-v0.1/ao_pins.h b/src/nanopeak-v0.1/ao_pins.h index bd4a06d1..713c810a 100644 --- a/src/nanopeak-v0.1/ao_pins.h +++ b/src/nanopeak-v0.1/ao_pins.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 diff --git a/src/product/ao_flash_pins.h b/src/product/ao_flash_pins.h index 4917ee6f..ff8d3273 100644 --- a/src/product/ao_flash_pins.h +++ b/src/product/ao_flash_pins.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 diff --git a/src/product/ao_flash_task.c b/src/product/ao_flash_task.c index 9a12add6..1f0edb05 100644 --- a/src/product/ao_flash_task.c +++ b/src/product/ao_flash_task.c @@ -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 diff --git a/src/product/ao_flash_task.h b/src/product/ao_flash_task.h index 0a2fbb35..6039fc46 100644 --- a/src/product/ao_flash_task.h +++ b/src/product/ao_flash_task.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 diff --git a/src/product/ao_micropeak.c b/src/product/ao_micropeak.c index 54522d86..f9960eb8 100644 --- a/src/product/ao_micropeak.c +++ b/src/product/ao_micropeak.c @@ -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 diff --git a/src/product/ao_micropeak.h b/src/product/ao_micropeak.h index 622f5a69..6dc7a465 100644 --- a/src/product/ao_micropeak.h +++ b/src/product/ao_micropeak.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 diff --git a/src/product/ao_teledongle.c b/src/product/ao_teledongle.c index 8bfd8b84..9e0d7662 100644 --- a/src/product/ao_teledongle.c +++ b/src/product/ao_teledongle.c @@ -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 diff --git a/src/product/ao_telelaunch.c b/src/product/ao_telelaunch.c index dde66090..9e155555 100644 --- a/src/product/ao_telelaunch.c +++ b/src/product/ao_telelaunch.c @@ -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 diff --git a/src/product/ao_telemetrum.c b/src/product/ao_telemetrum.c index 221498d6..a10cb384 100644 --- a/src/product/ao_telemetrum.c +++ b/src/product/ao_telemetrum.c @@ -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 diff --git a/src/product/ao_telemini.c b/src/product/ao_telemini.c index a0d8e18a..b192763d 100644 --- a/src/product/ao_telemini.c +++ b/src/product/ao_telemini.c @@ -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 diff --git a/src/product/ao_telenano.c b/src/product/ao_telenano.c index 77750efd..ac08979f 100644 --- a/src/product/ao_telenano.c +++ b/src/product/ao_telenano.c @@ -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 diff --git a/src/product/ao_telepyro.c b/src/product/ao_telepyro.c index 6f09be64..5b8e38c2 100644 --- a/src/product/ao_telepyro.c +++ b/src/product/ao_telepyro.c @@ -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 diff --git a/src/product/ao_telescience.c b/src/product/ao_telescience.c index 2888c266..28bf7e79 100644 --- a/src/product/ao_telescience.c +++ b/src/product/ao_telescience.c @@ -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 diff --git a/src/product/ao_teleterra.c b/src/product/ao_teleterra.c index e739ae0b..0142f9e3 100644 --- a/src/product/ao_teleterra.c +++ b/src/product/ao_teleterra.c @@ -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 diff --git a/src/product/ao_teleterra_0_2.c b/src/product/ao_teleterra_0_2.c index 4f7530f7..4e865378 100644 --- a/src/product/ao_teleterra_0_2.c +++ b/src/product/ao_teleterra_0_2.c @@ -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 diff --git a/src/product/ao_terraui.c b/src/product/ao_terraui.c index 1e7b5dcd..c2bbc30e 100644 --- a/src/product/ao_terraui.c +++ b/src/product/ao_terraui.c @@ -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 diff --git a/src/product/ao_test.c b/src/product/ao_test.c index 273a73b5..d1c60804 100644 --- a/src/product/ao_test.c +++ b/src/product/ao_test.c @@ -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 diff --git a/src/product/ao_tidongle.c b/src/product/ao_tidongle.c index b1a96bdd..77321a02 100644 --- a/src/product/ao_tidongle.c +++ b/src/product/ao_tidongle.c @@ -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 diff --git a/src/spiradio-v0.1/ao_pins.h b/src/spiradio-v0.1/ao_pins.h index cf01c9c6..472da16f 100644 --- a/src/spiradio-v0.1/ao_pins.h +++ b/src/spiradio-v0.1/ao_pins.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 diff --git a/src/spiradio-v0.1/ao_spiradio.c b/src/spiradio-v0.1/ao_spiradio.c index de9ea706..07d33aa4 100644 --- a/src/spiradio-v0.1/ao_spiradio.c +++ b/src/spiradio-v0.1/ao_spiradio.c @@ -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 diff --git a/src/stm-bringup/ao.h b/src/stm-bringup/ao.h index 2c7d5282..29d0d716 100644 --- a/src/stm-bringup/ao.h +++ b/src/stm-bringup/ao.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 diff --git a/src/stm-bringup/bringup.c b/src/stm-bringup/bringup.c index c5fad4a3..b9c6d5d6 100644 --- a/src/stm-bringup/bringup.c +++ b/src/stm-bringup/bringup.c @@ -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 diff --git a/src/stm-bringup/bringup.ld b/src/stm-bringup/bringup.ld index 10d50cd6..dcdcf073 100644 --- a/src/stm-bringup/bringup.ld +++ b/src/stm-bringup/bringup.ld @@ -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 diff --git a/src/stm-demo/ao_demo.c b/src/stm-demo/ao_demo.c index ffc5d2d8..db432c2a 100644 --- a/src/stm-demo/ao_demo.c +++ b/src/stm-demo/ao_demo.c @@ -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 diff --git a/src/stm-demo/ao_pins.h b/src/stm-demo/ao_pins.h index 885b9db6..233537df 100644 --- a/src/stm-demo/ao_pins.h +++ b/src/stm-demo/ao_pins.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 diff --git a/src/stm-demo/flash-loader/ao_pins.h b/src/stm-demo/flash-loader/ao_pins.h index 4c59101a..eb5fcb8b 100644 --- a/src/stm-demo/flash-loader/ao_pins.h +++ b/src/stm-demo/flash-loader/ao_pins.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 diff --git a/src/stm-flash/ao_pins.h b/src/stm-flash/ao_pins.h index d6c72653..853b6841 100644 --- a/src/stm-flash/ao_pins.h +++ b/src/stm-flash/ao_pins.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 diff --git a/src/stm/altos-loader.ld b/src/stm/altos-loader.ld index 0753f5f7..a4a7dc43 100644 --- a/src/stm/altos-loader.ld +++ b/src/stm/altos-loader.ld @@ -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 diff --git a/src/stm/altos-ram.ld b/src/stm/altos-ram.ld index 1143a08b..098454e1 100644 --- a/src/stm/altos-ram.ld +++ b/src/stm/altos-ram.ld @@ -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 diff --git a/src/stm/altos.ld b/src/stm/altos.ld index 3106cc3b..6a8c7113 100644 --- a/src/stm/altos.ld +++ b/src/stm/altos.ld @@ -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 diff --git a/src/stm/ao_adc_stm.c b/src/stm/ao_adc_stm.c index 67416a9d..77f121dc 100644 --- a/src/stm/ao_adc_stm.c +++ b/src/stm/ao_adc_stm.c @@ -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 diff --git a/src/stm/ao_arch.h b/src/stm/ao_arch.h index f9508b8f..0cc29376 100644 --- a/src/stm/ao_arch.h +++ b/src/stm/ao_arch.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 diff --git a/src/stm/ao_arch_funcs.h b/src/stm/ao_arch_funcs.h index a796891d..18ca20da 100644 --- a/src/stm/ao_arch_funcs.h +++ b/src/stm/ao_arch_funcs.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 @@ -136,7 +137,7 @@ void  ao_spi_recv(void *block, uint16_t len, uint8_t spi_index);  void -ao_spi_duplex(void *out, void *in, uint16_t len, uint8_t spi_index); +ao_spi_duplex(const void *out, void *in, uint16_t len, uint8_t spi_index);  extern uint16_t	ao_spi_speed[STM_NUM_SPI]; diff --git a/src/stm/ao_beep_stm.c b/src/stm/ao_beep_stm.c index a95d869b..0b4e6012 100644 --- a/src/stm/ao_beep_stm.c +++ b/src/stm/ao_beep_stm.c @@ -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 diff --git a/src/stm/ao_boot_chain.c b/src/stm/ao_boot_chain.c index bcebf033..488af1e1 100644 --- a/src/stm/ao_boot_chain.c +++ b/src/stm/ao_boot_chain.c @@ -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 diff --git a/src/stm/ao_boot_pin.c b/src/stm/ao_boot_pin.c index e825b618..4b5dc2ac 100644 --- a/src/stm/ao_boot_pin.c +++ b/src/stm/ao_boot_pin.c @@ -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 diff --git a/src/stm/ao_dma_stm.c b/src/stm/ao_dma_stm.c index 0135de48..6d779660 100644 --- a/src/stm/ao_dma_stm.c +++ b/src/stm/ao_dma_stm.c @@ -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 diff --git a/src/stm/ao_eeprom_stm.c b/src/stm/ao_eeprom_stm.c index 4207a860..05f880b8 100644 --- a/src/stm/ao_eeprom_stm.c +++ b/src/stm/ao_eeprom_stm.c @@ -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 diff --git a/src/stm/ao_exti.h b/src/stm/ao_exti.h index ebea224d..4f3e6132 100644 --- a/src/stm/ao_exti.h +++ b/src/stm/ao_exti.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 diff --git a/src/stm/ao_exti_stm.c b/src/stm/ao_exti_stm.c index 925f9a22..3e0b3e5c 100644 --- a/src/stm/ao_exti_stm.c +++ b/src/stm/ao_exti_stm.c @@ -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 diff --git a/src/stm/ao_fast_timer.c b/src/stm/ao_fast_timer.c index 9a73eb51..f4378ca8 100644 --- a/src/stm/ao_fast_timer.c +++ b/src/stm/ao_fast_timer.c @@ -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 diff --git a/src/stm/ao_flash.h b/src/stm/ao_flash.h index 09ca5ac1..d191d80d 100644 --- a/src/stm/ao_flash.h +++ b/src/stm/ao_flash.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 diff --git a/src/stm/ao_flash_loader_stm.c b/src/stm/ao_flash_loader_stm.c index 6bf89234..a8d1701b 100644 --- a/src/stm/ao_flash_loader_stm.c +++ b/src/stm/ao_flash_loader_stm.c @@ -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 diff --git a/src/stm/ao_flash_stm.c b/src/stm/ao_flash_stm.c index 39dc8144..c1648421 100644 --- a/src/stm/ao_flash_stm.c +++ b/src/stm/ao_flash_stm.c @@ -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 diff --git a/src/stm/ao_flash_stm_pins.h b/src/stm/ao_flash_stm_pins.h index d157a226..d5893c80 100644 --- a/src/stm/ao_flash_stm_pins.h +++ b/src/stm/ao_flash_stm_pins.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 diff --git a/src/stm/ao_i2c_stm.c b/src/stm/ao_i2c_stm.c index 158f5b21..29a8f173 100644 --- a/src/stm/ao_i2c_stm.c +++ b/src/stm/ao_i2c_stm.c @@ -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 @@ -137,7 +138,7 @@ ao_i2c_ev_isr(uint8_t index)  		ao_wakeup(&ao_i2c_state[index]);  	}  	if (sr1 & (1 << STM_I2C_SR1_RXNE)) { -		if (ao_i2c_recv_len[index]) {			 +		if (ao_i2c_recv_len[index]) {  			*(ao_i2c_recv_data[index]++) = stm_i2c->dr;  			if (!--ao_i2c_recv_len[index])  				ao_wakeup(&ao_i2c_recv_len[index]); @@ -254,7 +255,7 @@ ao_i2c_send(void *block, uint16_t len, uint8_t index, uint8_t stop)  			    (0 << STM_DMA_CCR_PINC) |  			    (0 << STM_DMA_CCR_CIRC) |  			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR)); -			    +  	ao_dma_start(tx_dma_index);  	ao_arch_block_interrupts();  	while (!ao_dma_done[tx_dma_index]) @@ -330,7 +331,7 @@ ao_i2c_recv(void *block, uint16_t len, uint8_t index, uint8_t stop)  				    block,  				    len,  				    (0 << STM_DMA_CCR_MEM2MEM) | -				    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | +				    (STM_DMA_CCR_PL_HIGH << STM_DMA_CCR_PL) |  				    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) |  				    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) |  				    (1 << STM_DMA_CCR_MINC) | diff --git a/src/stm/ao_interrupt.c b/src/stm/ao_interrupt.c index 56cce0c0..eb1ed0b5 100644 --- a/src/stm/ao_interrupt.c +++ b/src/stm/ao_interrupt.c @@ -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 diff --git a/src/stm/ao_lcd_font.c b/src/stm/ao_lcd_font.c index 0d7d87c1..b1664b13 100644 --- a/src/stm/ao_lcd_font.c +++ b/src/stm/ao_lcd_font.c @@ -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 diff --git a/src/stm/ao_lcd_stm.c b/src/stm/ao_lcd_stm.c index 95af53d1..10d5d620 100644 --- a/src/stm/ao_lcd_stm.c +++ b/src/stm/ao_lcd_stm.c @@ -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 diff --git a/src/stm/ao_lcd_stm.h b/src/stm/ao_lcd_stm.h index 14667546..1b769174 100644 --- a/src/stm/ao_lcd_stm.h +++ b/src/stm/ao_lcd_stm.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 diff --git a/src/stm/ao_led.c b/src/stm/ao_led.c index 9b61cf62..0f39befb 100644 --- a/src/stm/ao_led.c +++ b/src/stm/ao_led.c @@ -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 diff --git a/src/stm/ao_mpu.h b/src/stm/ao_mpu.h index cc6132a5..f26e132a 100644 --- a/src/stm/ao_mpu.h +++ b/src/stm/ao_mpu.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 diff --git a/src/stm/ao_mpu_stm.c b/src/stm/ao_mpu_stm.c index 969d7446..b3102ff5 100644 --- a/src/stm/ao_mpu_stm.c +++ b/src/stm/ao_mpu_stm.c @@ -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 diff --git a/src/stm/ao_profile.c b/src/stm/ao_profile.c index 149ca29f..fc6bbad7 100644 --- a/src/stm/ao_profile.c +++ b/src/stm/ao_profile.c @@ -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 diff --git a/src/stm/ao_profile.h b/src/stm/ao_profile.h index f8a0c25e..3bf8c0b0 100644 --- a/src/stm/ao_profile.h +++ b/src/stm/ao_profile.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 diff --git a/src/stm/ao_pwm_stm.c b/src/stm/ao_pwm_stm.c index ce1fa6f3..53000a17 100644 --- a/src/stm/ao_pwm_stm.c +++ b/src/stm/ao_pwm_stm.c @@ -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 diff --git a/src/stm/ao_romconfig.c b/src/stm/ao_romconfig.c index 5da15072..9d5fd6fb 100644 --- a/src/stm/ao_romconfig.c +++ b/src/stm/ao_romconfig.c @@ -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 diff --git a/src/stm/ao_sample_profile_timer.c b/src/stm/ao_sample_profile_timer.c index d5af3a57..4471a01f 100644 --- a/src/stm/ao_sample_profile_timer.c +++ b/src/stm/ao_sample_profile_timer.c @@ -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 diff --git a/src/stm/ao_sample_profile_timer.h b/src/stm/ao_sample_profile_timer.h index 1da1bfb4..f7ba486a 100644 --- a/src/stm/ao_sample_profile_timer.h +++ b/src/stm/ao_sample_profile_timer.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 diff --git a/src/stm/ao_serial_stm.c b/src/stm/ao_serial_stm.c index bf079060..db0be992 100644 --- a/src/stm/ao_serial_stm.c +++ b/src/stm/ao_serial_stm.c @@ -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 diff --git a/src/stm/ao_spi_stm.c b/src/stm/ao_spi_stm.c index 214092f6..05078f3b 100644 --- a/src/stm/ao_spi_stm.c +++ b/src/stm/ao_spi_stm.c @@ -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 @@ -85,6 +86,46 @@ validate_spi(struct stm_spi *stm_spi, int which, uint16_t len)  #endif  static void +ao_spi_set_dma_mosi(uint8_t id, const void *data, uint16_t len, uint32_t minc) +{ +	struct stm_spi *stm_spi = ao_spi_stm_info[id].stm_spi; +	uint8_t	mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; + +	ao_dma_set_transfer(mosi_dma_index, +			    &stm_spi->dr, +			    (void *) data, +			    len, +			    (0 << STM_DMA_CCR_MEM2MEM) | +			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | +			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | +			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | +			    (minc << STM_DMA_CCR_MINC) | +			    (0 << STM_DMA_CCR_PINC) | +			    (0 << STM_DMA_CCR_CIRC) | +			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR)); +} + +static void +ao_spi_set_dma_miso(uint8_t id, void *data, uint16_t len, uint32_t minc) +{ +	struct stm_spi *stm_spi = ao_spi_stm_info[id].stm_spi; +	uint8_t	miso_dma_index = ao_spi_stm_info[id].miso_dma_index; + +	ao_dma_set_transfer(miso_dma_index, +			    &stm_spi->dr, +			    data, +			    len, +			    (0 << STM_DMA_CCR_MEM2MEM) | +			    (STM_DMA_CCR_PL_HIGH << STM_DMA_CCR_PL) | +			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | +			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | +			    (minc << STM_DMA_CCR_MINC) | +			    (0 << STM_DMA_CCR_PINC) | +			    (0 << STM_DMA_CCR_CIRC) | +			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR)); +} + +static void  ao_spi_run(uint8_t id, uint8_t which, uint16_t len)  {  	struct stm_spi *stm_spi = ao_spi_stm_info[id].stm_spi; @@ -123,40 +164,15 @@ void  ao_spi_send(const void *block, uint16_t len, uint8_t spi_index)  {  	uint8_t id = AO_SPI_INDEX(spi_index); -	struct stm_spi *stm_spi = ao_spi_stm_info[id].stm_spi; -	uint8_t	mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; -	uint8_t	miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	/* Set up the transmit DMA to deliver data */ -	ao_dma_set_transfer(mosi_dma_index, -			    &stm_spi->dr, -			    (void *) block, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (1 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_mosi(id, block, len, 1);  	/* Set up the receive DMA -- when this is done, we know the SPI unit  	 * is idle. Without this, we'd have to poll waiting for the BSY bit to  	 * be cleared  	 */ -	ao_dma_set_transfer(miso_dma_index, -			    &stm_spi->dr, -			    &spi_dev_null, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (0 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_miso(id, &spi_dev_null, len, 0);  	ao_spi_run(id, 1, len);  } @@ -165,40 +181,15 @@ void  ao_spi_send_fixed(uint8_t value, uint16_t len, uint8_t spi_index)  {  	uint8_t id = AO_SPI_INDEX(spi_index); -	struct stm_spi *stm_spi = ao_spi_stm_info[id].stm_spi; -	uint8_t	mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; -	uint8_t	miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	/* Set up the transmit DMA to deliver data */ -	ao_dma_set_transfer(mosi_dma_index, -			    &stm_spi->dr, -			    &value, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (0 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_mosi(id, &value, len, 0);  	/* Set up the receive DMA -- when this is done, we know the SPI unit  	 * is idle. Without this, we'd have to poll waiting for the BSY bit to  	 * be cleared  	 */ -	ao_dma_set_transfer(miso_dma_index, -			    &stm_spi->dr, -			    &spi_dev_null, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (0 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_miso(id, &spi_dev_null, len, 0);  	ao_spi_run(id, 3, len);  } @@ -267,78 +258,29 @@ void  ao_spi_recv(void *block, uint16_t len, uint8_t spi_index)  {  	uint8_t		id = AO_SPI_INDEX(spi_index); -	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; -	uint8_t		mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; -	uint8_t		miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	spi_dev_null = 0xff;  	/* Set up transmit DMA to make the SPI hardware actually run */ -	ao_dma_set_transfer(mosi_dma_index, -			    &stm_spi->dr, -			    &spi_dev_null, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (0 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_mosi(id, &spi_dev_null, len, 0);  	/* Set up the receive DMA to capture data */ -	ao_dma_set_transfer(miso_dma_index, -			    &stm_spi->dr, -			    block, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (1 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_miso(id, block, len, 1);  	ao_spi_run(id, 9, len);  }  void -ao_spi_duplex(void *out, void *in, uint16_t len, uint8_t spi_index) +ao_spi_duplex(const void *out, void *in, uint16_t len, uint8_t spi_index)  {  	uint8_t		id = AO_SPI_INDEX(spi_index); -	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; -	uint8_t		mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; -	uint8_t		miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	/* Set up transmit DMA to send data */ -	ao_dma_set_transfer(mosi_dma_index, -			    &stm_spi->dr, -			    out, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (1 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_mosi(id, out, len, 1);  	/* Set up the receive DMA to capture data */ -	ao_dma_set_transfer(miso_dma_index, -			    &stm_spi->dr, -			    in, -			    len, -			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | -			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) | -			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) | -			    (1 << STM_DMA_CCR_MINC) | -			    (0 << STM_DMA_CCR_PINC) | -			    (0 << STM_DMA_CCR_CIRC) | -			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR)); +	ao_spi_set_dma_miso(id, in, len, 1); +  	ao_spi_run(id, 11, len);  } diff --git a/src/stm/ao_spi_stm_slave.c b/src/stm/ao_spi_stm_slave.c index 962ff2c6..5bb5105d 100644 --- a/src/stm/ao_spi_stm_slave.c +++ b/src/stm/ao_spi_stm_slave.c @@ -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 @@ -54,7 +55,7 @@ ao_spi_slave_send(void *block, uint16_t len)  			    block,  			    len,  			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | +			    (STM_DMA_CCR_PL_HIGH << STM_DMA_CCR_PL) |  			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) |  			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) |  			    (1 << STM_DMA_CCR_MINC) | @@ -74,7 +75,7 @@ ao_spi_slave_send(void *block, uint16_t len)  			    &spi_dev_null,  			    len,  			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | +			    (STM_DMA_CCR_PL_VERY_HIGH << STM_DMA_CCR_PL) |  			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) |  			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) |  			    (0 << STM_DMA_CCR_MINC) | @@ -110,7 +111,7 @@ ao_spi_slave_recv(void *block, uint16_t len)  			    &spi_dev_null,  			    len,  			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | +			    (STM_DMA_CCR_PL_HIGH << STM_DMA_CCR_PL) |  			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) |  			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) |  			    (0 << STM_DMA_CCR_MINC) | @@ -127,7 +128,7 @@ ao_spi_slave_recv(void *block, uint16_t len)  			    block,  			    len,  			    (0 << STM_DMA_CCR_MEM2MEM) | -			    (STM_DMA_CCR_PL_MEDIUM << STM_DMA_CCR_PL) | +			    (STM_DMA_CCR_PL_VERY_HIGH << STM_DMA_CCR_PL) |  			    (STM_DMA_CCR_MSIZE_8 << STM_DMA_CCR_MSIZE) |  			    (STM_DMA_CCR_PSIZE_8 << STM_DMA_CCR_PSIZE) |  			    (1 << STM_DMA_CCR_MINC) | diff --git a/src/stm/ao_timer.c b/src/stm/ao_timer.c index 91ede84b..f86a5116 100644 --- a/src/stm/ao_timer.c +++ b/src/stm/ao_timer.c @@ -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 diff --git a/src/stm/ao_usb_stm.c b/src/stm/ao_usb_stm.c index 3d26466b..0de501ab 100644 --- a/src/stm/ao_usb_stm.c +++ b/src/stm/ao_usb_stm.c @@ -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 diff --git a/src/stm/stm32l.h b/src/stm/stm32l.h index 352214ff..463125e2 100644 --- a/src/stm/stm32l.h +++ b/src/stm/stm32l.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 diff --git a/src/stmf0/Makefile-flash.defs b/src/stmf0/Makefile-flash.defs index 29d6ae45..804595bd 100644 --- a/src/stmf0/Makefile-flash.defs +++ b/src/stmf0/Makefile-flash.defs @@ -60,7 +60,7 @@ $(OBJ): $(INC)  distclean:	clean  clean: -	rm -f *.o $(HARDWARE)-$(PROGNAME)-*.elf +	rm -f *.o $(HARDWARE)-$(PROGNAME)-*.elf $(HARDWARE)-$(PROGNAME)-*.bin  	rm -f ao_product.h  install: diff --git a/src/stmf0/altos-loader.ld b/src/stmf0/altos-loader.ld index 86cf1838..c458116b 100644 --- a/src/stmf0/altos-loader.ld +++ b/src/stmf0/altos-loader.ld @@ -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 diff --git a/src/stmf0/altos.ld b/src/stmf0/altos.ld index 9dbc83d0..8f8933c6 100644 --- a/src/stmf0/altos.ld +++ b/src/stmf0/altos.ld @@ -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 diff --git a/src/stmf0/ao_adc_fast.c b/src/stmf0/ao_adc_fast.c index 0a2e2c5c..5ce3a396 100644 --- a/src/stmf0/ao_adc_fast.c +++ b/src/stmf0/ao_adc_fast.c @@ -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 @@ -153,7 +154,7 @@ ao_adc_init(void)  #endif  	/* Set the clock */ -	stm_adc.cfgr2 = STM_ADC_CFGR2_CKMODE_PCLK_2 << STM_ADC_CFGR2_CKMODE; +	stm_adc.cfgr2 = STM_ADC_CFGR2_CKMODE_ADCCLK << STM_ADC_CFGR2_CKMODE;  	/* Shortest sample time */  	stm_adc.smpr = STM_ADC_SMPR_SMP_1_5 << STM_ADC_SMPR_SMP; diff --git a/src/stmf0/ao_adc_fast.h b/src/stmf0/ao_adc_fast.h index c6903e9f..b8b5e003 100644 --- a/src/stmf0/ao_adc_fast.h +++ b/src/stmf0/ao_adc_fast.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 diff --git a/src/stmf0/ao_arch.h b/src/stmf0/ao_arch.h index 2597cadc..a36482b6 100644 --- a/src/stmf0/ao_arch.h +++ b/src/stmf0/ao_arch.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 @@ -114,21 +115,14 @@ extern const uint32_t ao_radio_cal;  #endif  #define AO_HCLK		(AO_SYSCLK / AO_AHB_PRESCALER) -#define AO_PCLK1	(AO_HCLK / AO_APB1_PRESCALER) -#define AO_PCLK2	(AO_HCLK / AO_APB2_PRESCALER) +#define AO_PCLK		(AO_HCLK / AO_APB_PRESCALER)  #define AO_SYSTICK	(AO_HCLK)  #define AO_PANIC_DELAY_SCALE  (AO_SYSCLK / 12000000) -#if AO_APB1_PRESCALER == 1 -#define AO_TIM23467_CLK		AO_PCLK1 +#if AO_APB_PRESCALER == 1 +#define AO_TIM_CLK		AO_PCLK  #else -#define AO_TIM23467_CLK		(2 * AO_PCLK1) -#endif - -#if AO_APB2_PRESCALER == 1 -#define AO_TIM91011_CLK		AO_PCLK2 -#else -#define AO_TIM91011_CLK		(2 * AO_PCLK2) +#define AO_TIM_CLK		(2 * AO_PCLK)  #endif  #define AO_STM_NVIC_HIGH_PRIORITY	(0 << 6) diff --git a/src/stmf0/ao_arch_funcs.h b/src/stmf0/ao_arch_funcs.h index 64311b23..8b6234c4 100644 --- a/src/stmf0/ao_arch_funcs.h +++ b/src/stmf0/ao_arch_funcs.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 @@ -82,7 +83,57 @@ void  ao_spi_send_fixed(uint8_t value, uint16_t len, uint8_t spi_index);  void -ao_spi_send_sync(void *block, uint16_t len, uint8_t spi_index); +ao_spi_send_sync(const void *block, uint16_t len, uint8_t spi_index); + +void +ao_spi_start_bytes(uint8_t spi_index); + +void +ao_spi_stop_bytes(uint8_t spi_index); + +static inline void +ao_spi_send_byte(uint8_t byte, uint8_t spi_index) +{ +	struct stm_spi	*stm_spi; + +	switch (AO_SPI_INDEX(spi_index)) { +	case 0: +		stm_spi = &stm_spi1; +		break; +	case 1: +		stm_spi = &stm_spi2; +		break; +	} + +	while (!(stm_spi->sr & (1 << STM_SPI_SR_TXE))) +		; +	stm_spi->dr = byte; +	while (!(stm_spi->sr & (1 << STM_SPI_SR_RXNE))) +		; +	(void) stm_spi->dr; +} + +static inline uint8_t +ao_spi_recv_byte(uint8_t spi_index) +{ +	struct stm_spi	*stm_spi; + +	switch (AO_SPI_INDEX(spi_index)) { +	case 0: +		stm_spi = &stm_spi1; +		break; +	case 1: +		stm_spi = &stm_spi2; +		break; +	} + +	while (!(stm_spi->sr & (1 << STM_SPI_SR_TXE))) +		; +	stm_spi->dr = 0xff; +	while (!(stm_spi->sr & (1 << STM_SPI_SR_RXNE))) +		; +	return stm_spi->dr; +}  void  ao_spi_recv(void *block, uint16_t len, uint8_t spi_index); diff --git a/src/stmf0/ao_boot_chain.c b/src/stmf0/ao_boot_chain.c index 83a543a0..8f850a0a 100644 --- a/src/stmf0/ao_boot_chain.c +++ b/src/stmf0/ao_boot_chain.c @@ -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 diff --git a/src/stmf0/ao_boot_pin.c b/src/stmf0/ao_boot_pin.c index e825b618..4b5dc2ac 100644 --- a/src/stmf0/ao_boot_pin.c +++ b/src/stmf0/ao_boot_pin.c @@ -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 diff --git a/src/stmf0/ao_crc.h b/src/stmf0/ao_crc.h index cd011d3a..7acc6f9c 100644 --- a/src/stmf0/ao_crc.h +++ b/src/stmf0/ao_crc.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 diff --git a/src/stmf0/ao_crc_stm.c b/src/stmf0/ao_crc_stm.c index 863f5ef5..4eb4540e 100644 --- a/src/stmf0/ao_crc_stm.c +++ b/src/stmf0/ao_crc_stm.c @@ -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 diff --git a/src/stmf0/ao_dma_stm.c b/src/stmf0/ao_dma_stm.c index e90c6bf8..7045514c 100644 --- a/src/stmf0/ao_dma_stm.c +++ b/src/stmf0/ao_dma_stm.c @@ -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 diff --git a/src/stmf0/ao_exti.h b/src/stmf0/ao_exti.h index 192611bd..7452af8e 100644 --- a/src/stmf0/ao_exti.h +++ b/src/stmf0/ao_exti.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 diff --git a/src/stmf0/ao_exti_stm.c b/src/stmf0/ao_exti_stm.c index 910afcf7..910a36f2 100644 --- a/src/stmf0/ao_exti_stm.c +++ b/src/stmf0/ao_exti_stm.c @@ -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 diff --git a/src/stmf0/ao_flash.h b/src/stmf0/ao_flash.h index 09ca5ac1..d191d80d 100644 --- a/src/stmf0/ao_flash.h +++ b/src/stmf0/ao_flash.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 diff --git a/src/stmf0/ao_flash_loader_stm.c b/src/stmf0/ao_flash_loader_stm.c index 6bf89234..a8d1701b 100644 --- a/src/stmf0/ao_flash_loader_stm.c +++ b/src/stmf0/ao_flash_loader_stm.c @@ -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 diff --git a/src/stmf0/ao_flash_stm.c b/src/stmf0/ao_flash_stm.c index 5fe0e619..2aeff388 100644 --- a/src/stmf0/ao_flash_stm.c +++ b/src/stmf0/ao_flash_stm.c @@ -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 diff --git a/src/stmf0/ao_flash_stm_pins.h b/src/stmf0/ao_flash_stm_pins.h index ab60b4f3..80993b24 100644 --- a/src/stmf0/ao_flash_stm_pins.h +++ b/src/stmf0/ao_flash_stm_pins.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 diff --git a/src/stmf0/ao_gpio.c b/src/stmf0/ao_gpio.c index c7bf0797..024ff948 100644 --- a/src/stmf0/ao_gpio.c +++ b/src/stmf0/ao_gpio.c @@ -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 diff --git a/src/stmf0/ao_interrupt.c b/src/stmf0/ao_interrupt.c index c6d8ef34..79412483 100644 --- a/src/stmf0/ao_interrupt.c +++ b/src/stmf0/ao_interrupt.c @@ -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 diff --git a/src/stmf0/ao_led.c b/src/stmf0/ao_led.c index 9b61cf62..0f39befb 100644 --- a/src/stmf0/ao_led.c +++ b/src/stmf0/ao_led.c @@ -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 diff --git a/src/stmf0/ao_pwm.c b/src/stmf0/ao_pwm.c index c1e157f5..f1c10b0b 100644 --- a/src/stmf0/ao_pwm.c +++ b/src/stmf0/ao_pwm.c @@ -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 diff --git a/src/stmf0/ao_romconfig.c b/src/stmf0/ao_romconfig.c index 5da15072..9d5fd6fb 100644 --- a/src/stmf0/ao_romconfig.c +++ b/src/stmf0/ao_romconfig.c @@ -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 diff --git a/src/stmf0/ao_spi_stm.c b/src/stmf0/ao_spi_stm.c index 55bf59d2..0448ad8c 100644 --- a/src/stmf0/ao_spi_stm.c +++ b/src/stmf0/ao_spi_stm.c @@ -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 @@ -41,8 +42,6 @@ static const struct ao_spi_stm_info ao_spi_stm_info[STM_NUM_SPI] = {  static uint8_t	spi_dev_null; - -  #define SPI_CR2	((0 << STM_SPI_CR2_LDMA_TX) |				\  		 (0 << STM_SPI_CR2_LDMA_RX) |				\  		 (1 << STM_SPI_CR2_FRXTH) |				\ @@ -62,12 +61,86 @@ static uint8_t	spi_dev_null;  			 (0 << STM_SPI_CR2_TXDMAEN) |	\  			 (0 << STM_SPI_CR2_RXDMAEN)) +#if DEBUG +static struct { +	uint8_t	task; +	uint8_t	which; +	AO_TICK_TYPE tick; +	uint16_t len; +} spi_tasks[64]; +static uint8_t	spi_task_index; + +static void +validate_spi(struct stm_spi *stm_spi, int which, uint16_t len) +{ +	uint32_t	sr = stm_spi->sr; + +	if (stm_spi != &stm_spi2) +		return; +	spi_tasks[spi_task_index].task = ao_cur_task ? ao_cur_task->task_id : 0; +	spi_tasks[spi_task_index].which = which; +	spi_tasks[spi_task_index].tick = ao_time(); +	spi_tasks[spi_task_index].len = len; +	spi_task_index = (spi_task_index + 1) & (63); +	if (sr & (1 << STM_SPI_SR_FRE)) +		ao_panic(0x40 | 1); +	if (sr & (1 << STM_SPI_SR_BSY)) +		ao_panic(0x40 | 2); +	if (sr & (1 << STM_SPI_SR_OVR)) +		ao_panic(0x40 | 3); +	if (sr & (1 << STM_SPI_SR_MODF)) +		ao_panic(0x40 | 4); +	if (sr & (1 << STM_SPI_SR_UDR)) +		ao_panic(0x40 | 5); +	if ((sr & (1 << STM_SPI_SR_TXE)) == 0) +		ao_panic(0x40 | 6); +	if (sr & (1 << STM_SPI_SR_RXNE)) +		ao_panic(0x40 | 7); +	if (which != 5 && which != 6 && which != 13) +		if (ao_cur_task->task_id != ao_spi_mutex[1]) +			ao_panic(0x40 | 8); +} +#else +#define validate_spi(stm_spi, which, len) do { (void) (which); (void) (len); } while (0) +#endif + +static void +ao_spi_run(uint8_t id, uint8_t which, uint16_t len) +{ +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; +	uint8_t		mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; +	uint8_t		miso_dma_index = ao_spi_stm_info[id].miso_dma_index; + +	validate_spi(stm_spi, which, len); + +	stm_spi->cr2 = SPI_CR2_DMA; + +	ao_dma_start(miso_dma_index); +	ao_dma_start(mosi_dma_index); + +	ao_arch_critical( +		while (!ao_dma_done[miso_dma_index]) +			ao_sleep(&ao_dma_done[miso_dma_index]); +		); + +	while ((stm_spi->sr & (1 << STM_SPI_SR_TXE)) == 0); +	while (stm_spi->sr & (1 << STM_SPI_SR_BSY)); + +	validate_spi(stm_spi, which+1, len); + +	stm_spi->cr2 = 0; + +	ao_dma_done_transfer(mosi_dma_index); +	ao_dma_done_transfer(miso_dma_index); +} +  void  ao_spi_send(const void *block, uint16_t len, uint8_t spi_index)  { -	struct stm_spi *stm_spi = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].stm_spi; -	uint8_t	mosi_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].mosi_dma_index; -	uint8_t	miso_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].miso_dma_index; +	uint8_t		id = AO_SPI_INDEX(spi_index); +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; +	uint8_t		mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; +	uint8_t		miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	/* Set up the transmit DMA to deliver data */  	ao_dma_set_transfer(mosi_dma_index, @@ -84,9 +157,6 @@ ao_spi_send(const void *block, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR) |  			    (0 << STM_DMA_CCR_TCIE)); -	/* Clear RXNE */ -	(void) stm_spi->dr; -  	/* Set up the receive DMA -- when this is done, we know the SPI unit  	 * is idle. Without this, we'd have to poll waiting for the BSY bit to  	 * be cleared @@ -105,24 +175,16 @@ ao_spi_send(const void *block, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR) |  			    (1 << STM_DMA_CCR_TCIE)); -	stm_spi->cr2 = SPI_CR2_DMA; - -	ao_dma_start(miso_dma_index); -	ao_dma_start(mosi_dma_index); -	ao_arch_critical( -		while (!ao_dma_done[miso_dma_index]) -			ao_sleep(&ao_dma_done[miso_dma_index]); -		); -	ao_dma_done_transfer(mosi_dma_index); -	ao_dma_done_transfer(miso_dma_index); +	ao_spi_run(id, 1, len);  }  void  ao_spi_send_fixed(uint8_t value, uint16_t len, uint8_t spi_index)  { -	struct stm_spi *stm_spi = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].stm_spi; -	uint8_t	mosi_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].mosi_dma_index; -	uint8_t	miso_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].miso_dma_index; +	uint8_t		id = AO_SPI_INDEX(spi_index); +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; +	uint8_t		mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; +	uint8_t		miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	/* Set up the transmit DMA to deliver data */  	ao_dma_set_transfer(mosi_dma_index, @@ -139,9 +201,6 @@ ao_spi_send_fixed(uint8_t value, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR) |  			    (0 << STM_DMA_CCR_TCIE)); -	/* Clear RXNE */ -	(void) stm_spi->dr; -  	/* Set up the receive DMA -- when this is done, we know the SPI unit  	 * is idle. Without this, we'd have to poll waiting for the BSY bit to  	 * be cleared @@ -160,40 +219,67 @@ ao_spi_send_fixed(uint8_t value, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR) |  			    (1 << STM_DMA_CCR_TCIE)); -	stm_spi->cr2 = SPI_CR2_DMA; -	ao_dma_start(miso_dma_index); -	ao_dma_start(mosi_dma_index); -	ao_arch_critical( -		while (!ao_dma_done[miso_dma_index]) -			ao_sleep(&ao_dma_done[miso_dma_index]); -		); -	ao_dma_done_transfer(mosi_dma_index); -	ao_dma_done_transfer(miso_dma_index); +	ao_spi_run(id, 3, len);  }  void -ao_spi_send_sync(void *block, uint16_t len, uint8_t spi_index) +ao_spi_start_bytes(uint8_t spi_index)  { -	uint8_t		*b = block; -	struct stm_spi	*stm_spi = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].stm_spi; +	uint8_t		id = AO_SPI_INDEX(spi_index); +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi;  	stm_spi->cr2 = SPI_CR2_SYNC; +	validate_spi(stm_spi, 5, 0xffff); +} -	/* Clear RXNE */ +void +ao_spi_stop_bytes(uint8_t spi_index) +{ +	uint8_t		id = AO_SPI_INDEX(spi_index); +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; + +	while ((stm_spi->sr & (1 << STM_SPI_SR_TXE)) == 0) +		; +	while (stm_spi->sr & (1 << STM_SPI_SR_BSY)) +		; +	/* Clear the OVR flag */  	(void) stm_spi->dr; +	(void) stm_spi->sr; +	validate_spi(stm_spi, 6, 0xffff); +	stm_spi->cr2 = 0; +} +void +ao_spi_send_sync(const void *block, uint16_t len, uint8_t spi_index) +{ +	uint8_t		id = AO_SPI_INDEX(spi_index); +	const uint8_t	*b = block; +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; + +	stm_spi->cr2 = SPI_CR2_SYNC; + +	validate_spi(stm_spi, 7, len);  	while (len--) {  		while (!(stm_spi->sr & (1 << STM_SPI_SR_TXE)));  		stm_spi->dr = *b++;  	} +	while ((stm_spi->sr & (1 << STM_SPI_SR_TXE)) == 0) +		; +	while (stm_spi->sr & (1 << STM_SPI_SR_BSY)) +		; +	/* Clear the OVR flag */ +	(void) stm_spi->dr; +	(void) stm_spi->sr; +	validate_spi(stm_spi, 8, len);  }  void  ao_spi_recv(void *block, uint16_t len, uint8_t spi_index)  { -	struct stm_spi *stm_spi = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].stm_spi; -	uint8_t	mosi_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].mosi_dma_index; -	uint8_t	miso_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].miso_dma_index; +	uint8_t		id = AO_SPI_INDEX(spi_index); +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; +	uint8_t		mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; +	uint8_t		miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	spi_dev_null = 0xff; @@ -212,9 +298,6 @@ ao_spi_recv(void *block, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR) |  			    (0 << STM_DMA_CCR_TCIE)); -	/* Clear RXNE */ -	(void) stm_spi->dr; -  	/* Set up the receive DMA to capture data */  	ao_dma_set_transfer(miso_dma_index,  			    &stm_spi->dr, @@ -230,26 +313,16 @@ ao_spi_recv(void *block, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR) |  			    (1 << STM_DMA_CCR_TCIE)); -	stm_spi->cr2 = SPI_CR2_DMA; -	ao_dma_start(miso_dma_index); -	ao_dma_start(mosi_dma_index); - -	/* Wait until the SPI unit is done */ -	ao_arch_critical( -		while (!ao_dma_done[miso_dma_index]) -			ao_sleep(&ao_dma_done[miso_dma_index]); -		); - -	ao_dma_done_transfer(mosi_dma_index); -	ao_dma_done_transfer(miso_dma_index); +	ao_spi_run(id, 9, len);  }  void  ao_spi_duplex(void *out, void *in, uint16_t len, uint8_t spi_index)  { -	struct stm_spi *stm_spi = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].stm_spi; -	uint8_t	mosi_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].mosi_dma_index; -	uint8_t	miso_dma_index = ao_spi_stm_info[AO_SPI_INDEX(spi_index)].miso_dma_index; +	uint8_t		id = AO_SPI_INDEX(spi_index); +	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; +	uint8_t		mosi_dma_index = ao_spi_stm_info[id].mosi_dma_index; +	uint8_t		miso_dma_index = ao_spi_stm_info[id].miso_dma_index;  	/* Set up transmit DMA to send data */  	ao_dma_set_transfer(mosi_dma_index, @@ -266,9 +339,6 @@ ao_spi_duplex(void *out, void *in, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_MEM_TO_PER << STM_DMA_CCR_DIR) |  			    (0 << STM_DMA_CCR_TCIE)); -	/* Clear RXNE */ -	(void) stm_spi->dr; -  	/* Set up the receive DMA to capture data */  	ao_dma_set_transfer(miso_dma_index,  			    &stm_spi->dr, @@ -284,18 +354,7 @@ ao_spi_duplex(void *out, void *in, uint16_t len, uint8_t spi_index)  			    (STM_DMA_CCR_DIR_PER_TO_MEM << STM_DMA_CCR_DIR) |  			    (1 << STM_DMA_CCR_TCIE)); -	stm_spi->cr2 = SPI_CR2_DMA; -	ao_dma_start(miso_dma_index); -	ao_dma_start(mosi_dma_index); - -	/* Wait until the SPI unit is done */ -	ao_arch_critical( -		while (!ao_dma_done[miso_dma_index]) -			ao_sleep(&ao_dma_done[miso_dma_index]); -		); - -	ao_dma_done_transfer(mosi_dma_index); -	ao_dma_done_transfer(miso_dma_index); +	ao_spi_run(id, 11, len);  }  static void @@ -303,32 +362,24 @@ ao_spi_disable_index(uint8_t spi_index)  {  	/* Disable current config  	 */ -	switch (AO_SPI_INDEX(spi_index)) { -	case STM_SPI_INDEX(1): -		switch (spi_index) { -		case AO_SPI_1_PA5_PA6_PA7: -			stm_gpio_set(&stm_gpioa, 5, 1); -			stm_moder_set(&stm_gpioa, 5, STM_MODER_OUTPUT); -			stm_moder_set(&stm_gpioa, 6, STM_MODER_INPUT); -			stm_moder_set(&stm_gpioa, 7, STM_MODER_OUTPUT); -			break; -		case AO_SPI_1_PB3_PB4_PB5: -			stm_gpio_set(&stm_gpiob, 3, 1); -			stm_moder_set(&stm_gpiob, 3, STM_MODER_OUTPUT); -			stm_moder_set(&stm_gpiob, 4, STM_MODER_INPUT); -			stm_moder_set(&stm_gpiob, 5, STM_MODER_OUTPUT); -			break; -		} +	switch (spi_index) { +	case AO_SPI_1_PA5_PA6_PA7: +		stm_gpio_set(&stm_gpioa, 5, 1); +		stm_moder_set(&stm_gpioa, 5, STM_MODER_OUTPUT); +		stm_moder_set(&stm_gpioa, 6, STM_MODER_INPUT); +		stm_moder_set(&stm_gpioa, 7, STM_MODER_OUTPUT);  		break; -	case STM_SPI_INDEX(2): -		switch (spi_index) { -		case AO_SPI_2_PB13_PB14_PB15: -			stm_gpio_set(&stm_gpiob, 13, 1); -			stm_moder_set(&stm_gpiob, 13, STM_MODER_OUTPUT); -			stm_moder_set(&stm_gpiob, 14, STM_MODER_INPUT); -			stm_moder_set(&stm_gpiob, 15, STM_MODER_OUTPUT); -			break; -		} +	case AO_SPI_1_PB3_PB4_PB5: +		stm_gpio_set(&stm_gpiob, 3, 1); +		stm_moder_set(&stm_gpiob, 3, STM_MODER_OUTPUT); +		stm_moder_set(&stm_gpiob, 4, STM_MODER_INPUT); +		stm_moder_set(&stm_gpiob, 5, STM_MODER_OUTPUT); +		break; +	case AO_SPI_2_PB13_PB14_PB15: +		stm_gpio_set(&stm_gpiob, 13, 1); +		stm_moder_set(&stm_gpiob, 13, STM_MODER_OUTPUT); +		stm_moder_set(&stm_gpiob, 14, STM_MODER_INPUT); +		stm_moder_set(&stm_gpiob, 15, STM_MODER_OUTPUT);  		break;  	}  } @@ -336,29 +387,21 @@ ao_spi_disable_index(uint8_t spi_index)  static void  ao_spi_enable_index(uint8_t spi_index)  { -	switch (AO_SPI_INDEX(spi_index)) { -	case STM_SPI_INDEX(1): -		switch (spi_index) { -		case AO_SPI_1_PA5_PA6_PA7: -			stm_afr_set(&stm_gpioa, 5, STM_AFR_AF0); -			stm_afr_set(&stm_gpioa, 6, STM_AFR_AF0); -			stm_afr_set(&stm_gpioa, 7, STM_AFR_AF0); -			break; -		case AO_SPI_1_PB3_PB4_PB5: -			stm_afr_set(&stm_gpiob, 3, STM_AFR_AF0); -			stm_afr_set(&stm_gpiob, 4, STM_AFR_AF0); -			stm_afr_set(&stm_gpiob, 5, STM_AFR_AF0); -			break; -		} +	switch (spi_index) { +	case AO_SPI_1_PA5_PA6_PA7: +		stm_afr_set(&stm_gpioa, 5, STM_AFR_AF0); +		stm_afr_set(&stm_gpioa, 6, STM_AFR_AF0); +		stm_afr_set(&stm_gpioa, 7, STM_AFR_AF0);  		break; -	case STM_SPI_INDEX(2): -		switch (spi_index) { -		case AO_SPI_2_PB13_PB14_PB15: -			stm_afr_set(&stm_gpiob, 13, STM_AFR_AF0); -			stm_afr_set(&stm_gpiob, 14, STM_AFR_AF0); -			stm_afr_set(&stm_gpiob, 15, STM_AFR_AF0); -			break; -		} +	case AO_SPI_1_PB3_PB4_PB5: +		stm_afr_set(&stm_gpiob, 3, STM_AFR_AF0); +		stm_afr_set(&stm_gpiob, 4, STM_AFR_AF0); +		stm_afr_set(&stm_gpiob, 5, STM_AFR_AF0); +		break; +	case AO_SPI_2_PB13_PB14_PB15: +		stm_afr_set(&stm_gpiob, 13, STM_AFR_AF0); +		stm_afr_set(&stm_gpiob, 14, STM_AFR_AF0); +		stm_afr_set(&stm_gpiob, 15, STM_AFR_AF0);  		break;  	}  } @@ -369,6 +412,20 @@ ao_spi_config(uint8_t spi_index, uint32_t speed)  	uint8_t		id = AO_SPI_INDEX(spi_index);  	struct stm_spi	*stm_spi = ao_spi_stm_info[id].stm_spi; +	if (spi_index != ao_spi_index[id]) { + +		/* Disable old config +		 */ +		ao_spi_disable_index(ao_spi_index[id]); + +		/* Enable new config +		 */ +		ao_spi_enable_index(spi_index); + +		/* Remember current config +		 */ +		ao_spi_index[id] = spi_index; +	}  	stm_spi->cr2 = SPI_CR2;  	stm_spi->cr1 = ((0 << STM_SPI_CR1_BIDIMODE) |			/* Three wire mode */  			(0 << STM_SPI_CR1_BIDIOE) | @@ -384,21 +441,6 @@ ao_spi_config(uint8_t spi_index, uint32_t speed)  			(1 << STM_SPI_CR1_MSTR) |  			(0 << STM_SPI_CR1_CPOL) |			/* Format 0 */  			(0 << STM_SPI_CR1_CPHA)); - -	if (spi_index != ao_spi_index[id]) { - -		/* Disable old config -		 */ -		ao_spi_disable_index(ao_spi_index[id]); - -		/* Enable new config -		 */ -		ao_spi_enable_index(spi_index); - -		/* Remember current config -		 */ -		ao_spi_index[id] = spi_index; -	}  }  uint8_t @@ -439,10 +481,57 @@ ao_spi_channel_init(uint8_t spi_index)  	ao_spi_disable_index(spi_index);  	stm_spi->cr1 = 0; -	(void) stm_spi->sr;  	stm_spi->cr2 = SPI_CR2_SYNC; + +	/* Clear any pending data and error flags */ +	(void) stm_spi->dr; +	(void) stm_spi->sr;  } +#if DEBUG +void +ao_spi_dump_cmd(void) +{ +	int s; + +	for (s = 0; s < 64; s++) { +		int i = (spi_task_index + s) & 63; +		if (spi_tasks[i].which) { +			int t; +			const char *name = "(none)"; +			for (t = 0; t < ao_num_tasks; t++) +				if (ao_tasks[t]->task_id == spi_tasks[i].task) { +					name = ao_tasks[t]->name; +					break; +				} +			printf("%2d: %5d task %2d which %2d len %5d %s\n", +			       s, +			       spi_tasks[i].tick, +			       spi_tasks[i].task, +			       spi_tasks[i].which, +			       spi_tasks[i].len, +			       name); +		} +	} +	for (s = 0; s < STM_NUM_SPI; s++) { +		struct stm_spi *spi = ao_spi_stm_info[s].stm_spi; + +		printf("%1d: mutex %2d index %3d miso dma %3d mosi dma %3d", +		       s, ao_spi_mutex[s], ao_spi_index[s], +		       ao_spi_stm_info[s].miso_dma_index, +		       ao_spi_stm_info[s].mosi_dma_index); +		printf(" cr1 %04x cr2 %02x sr %03x\n", +		       spi->cr1, spi->cr2, spi->sr); +	} + +} + +static const struct ao_cmds ao_spi_cmds[] = { +	{ ao_spi_dump_cmd, 	"S\0Dump SPI status" }, +	{ 0, NULL } +}; +#endif +  void  ao_spi_init(void)  { @@ -475,4 +564,7 @@ ao_spi_init(void)  	ao_spi_index[1] = AO_SPI_CONFIG_NONE;  	ao_spi_channel_init(STM_SPI_INDEX(2));  #endif +#if DEBUG +	ao_cmd_register(&ao_spi_cmds[0]); +#endif  } diff --git a/src/stmf0/ao_timer.c b/src/stmf0/ao_timer.c index e5bf04a3..5c05e4f1 100644 --- a/src/stmf0/ao_timer.c +++ b/src/stmf0/ao_timer.c @@ -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 @@ -175,13 +176,12 @@ ao_clock_normal_start(void)  	while (!(stm_rcc.cr & (1 << STM_RCC_CR_HSERDY)))  		asm("nop"); -#ifdef STM_PLLSRC  	/* Disable the PLL */  	stm_rcc.cr &= ~(1 << STM_RCC_CR_PLLON);  	while (stm_rcc.cr & (1 << STM_RCC_CR_PLLRDY))  		asm("nop"); -	/* PLLVCO to 48MHz (for USB) -> PLLMUL = 3 */ +	/* Set multiplier */  	cfgr = stm_rcc.cfgr;  	cfgr &= ~(STM_RCC_CFGR_PLLMUL_MASK << STM_RCC_CFGR_PLLMUL);  	cfgr |= (AO_RCC_CFGR_PLLMUL << STM_RCC_CFGR_PLLMUL); @@ -191,8 +191,8 @@ ao_clock_normal_start(void)  	cfgr |= (STM_RCC_CFGR_PLLSRC_TARGET_CLOCK  << STM_RCC_CFGR_PLLSRC);  	stm_rcc.cfgr = cfgr; -	/* Disable pre divider */ -	stm_rcc.cfgr2 = (STM_RCC_CFGR2_PREDIV_1 << STM_RCC_CFGR2_PREDIV); +	/* Set pre divider */ +	stm_rcc.cfgr2 = (AO_RCC_CFGR2_PLLDIV << STM_RCC_CFGR2_PREDIV);  	/* Enable the PLL and wait for it */  	stm_rcc.cr |= (1 << STM_RCC_CR_PLLON); @@ -201,9 +201,6 @@ ao_clock_normal_start(void)  #endif -#endif - -  #if AO_HSI48  #define STM_RCC_CFGR_SWS_TARGET_CLOCK		STM_RCC_CFGR_SWS_HSI48  #define STM_RCC_CFGR_SW_TARGET_CLOCK		STM_RCC_CFGR_SW_HSI48 @@ -225,6 +222,8 @@ ao_clock_normal_start(void)  #define STM_PLLSRC				STM_HSI  #define STM_RCC_CFGR_PLLSRC_TARGET_CLOCK	0  #endif + +  }  static void @@ -302,14 +301,34 @@ ao_clock_init(void)  	/* Clear reset flags */  	stm_rcc.csr |= (1 << STM_RCC_CSR_RMVF); +#ifdef AO_MCO_PORT +	cfgr = stm_rcc.cfgr; + +	/* Send PLL clock to MCO */ +	cfgr &= ~(STM_RCC_CFGR_MCO_MASK << STM_RCC_CFGR_MCO); +	cfgr |= (STM_RCC_CFGR_MCO_PLLCLK << STM_RCC_CFGR_MCO); + +	/* Divide by 1 */ +	cfgr &= ~(STM_RCC_CFGR_MCOPRE_DIV_MASK << STM_RCC_CFGR_MCOPRE); +	cfgr |= (STM_RCC_CFGR_MCOPRE_DIV_1 << STM_RCC_CFGR_MCOPRE); + +	/* Don't divide PLL */ +	cfgr |= (1 << STM_RCC_CFGR_PLL_NODIV); + +	stm_rcc.cfgr = cfgr; + +	ao_enable_port(AO_MCO_PORT); +	stm_ospeedr_set(AO_MCO_PORT, AO_MCO_PIN, STM_OSPEEDR_HIGH); +	stm_afr_set(AO_MCO_PORT, AO_MCO_PIN, AO_MCO_AF); +#endif +  #if DEBUG_THE_CLOCK  	/* Output SYSCLK on PA8 for measurments */  	stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_GPIOAEN);  	stm_afr_set(&stm_gpioa, 8, STM_AFR_AF0); -	stm_moder_set(&stm_gpioa, 8, STM_MODER_ALTERNATE); -	stm_ospeedr_set(&stm_gpioa, 8, STM_OSPEEDR_40MHz); +	stm_ospeedr_set(&stm_gpioa, 8, STM_OSPEEDR_HIGH);  	stm_rcc.cfgr |= (STM_RCC_CFGR_MCOPRE_DIV_1 << STM_RCC_CFGR_MCOPRE);  	stm_rcc.cfgr |= (STM_RCC_CFGR_MCOSEL_HSE << STM_RCC_CFGR_MCOSEL); diff --git a/src/stmf0/ao_usb_stm.c b/src/stmf0/ao_usb_stm.c index fb3d8c85..cbedb996 100644 --- a/src/stmf0/ao_usb_stm.c +++ b/src/stmf0/ao_usb_stm.c @@ -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 diff --git a/src/stmf0/stm32f0.h b/src/stmf0/stm32f0.h index 33eb9c88..054200e0 100644 --- a/src/stmf0/stm32f0.h +++ b/src/stmf0/stm32f0.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 @@ -312,6 +313,15 @@ extern struct stm_rcc stm_rcc;  #define STM_RCC_CFGR_MCO	(24)  # define STM_RCC_CFGR_MCO_DISABLE	0 +# define STM_RCC_CFGR_MCO_RC		1 +# define STM_RCC_CFGR_MCO_LSI		2 +# define STM_RCC_CFGR_MCO_LSE		3 +# define STM_RCC_CFGR_MCO_SYSCLK	4 +# define STM_RCC_CFGR_MCO_HSI		5 +# define STM_RCC_CFGR_MCO_HSE		6 +# define STM_RCC_CFGR_MCO_PLLCLK	7 +# define STM_RCC_CFGR_MCO_HSI48		8 +# define STM_RCC_CFGR_MCO_MASK		(0xf)  #define STM_RCC_CFGR_PLLMUL	(18)  #define  STM_RCC_CFGR_PLLMUL_2		0 @@ -1344,6 +1354,290 @@ extern struct stm_i2c stm_i2c1, stm_i2c2;  #define STM_I2C_CCR_CCR		0  #define  STM_I2C_CCR_MASK	0x7ff +struct stm_tim1 { +	vuint32_t	cr1; +	vuint32_t	cr2; +	vuint32_t	smcr; +	vuint32_t	dier; + +	vuint32_t	sr; +	vuint32_t	egr; +	vuint32_t	ccmr1; +	vuint32_t	ccmr2; + +	vuint32_t	ccer; +	vuint32_t	cnt; +	vuint32_t	psc; +	vuint32_t	arr; + +	vuint32_t	rcr; +	vuint32_t	ccr1; +	vuint32_t	ccr2; +	vuint32_t	ccr3; + +	vuint32_t	ccr4; +	vuint32_t	bdtr; +	vuint32_t	dcr; +	vuint32_t	dmar; +}; + +#define STM_TIM1_CR1_CKD	8 +#define  STM_TIM1_CR1_CKD_1		0 +#define  STM_TIM1_CR1_CKD_2		1 +#define  STM_TIM1_CR1_CKD_4		2 + +#define STM_TIM1_CR1_ARPE	7 + +#define STM_TIM1_CR1_CMS	5 +#define  STM_TIM1_CR1_CMS_EDGE		0 +#define  STM_TIM1_CR1_CMS_CENTER_1	1 +#define  STM_TIM1_CR1_CMS_CENTER_2	2 +#define  STM_TIM1_CR1_CMS_CENTER_3	3 + +#define STM_TIM1_CR1_DIR	4 +#define  STM_TIM1_CR1_DIR_UP		0 +#define  STM_TIM1_CR1_DIR_DOWn		1 +#define STM_TIM1_CR1_OPM	3 +#define STM_TIM1_CR1_URS	2 +#define STM_TIM1_CR1_UDIS	1 +#define STM_TIM1_CR1_CEN	0 + +#define STM_TIM1_CR2_OIS4	14 +#define STM_TIM1_CR2_OIS3N	13 +#define STM_TIM1_CR2_OIS3	12 +#define STM_TIM1_CR2_OIS2N	11 +#define STM_TIM1_CR2_OIS2	10 +#define STM_TIM1_CR2_OIS1N	9 +#define STM_TIM1_CR2_OSI1	8 +#define STM_TIM1_CR2_TI1S	7 +#define STM_TIM1_CR2_MMS	4 +#define  STM_TIM1_CR2_MMS_RESET			0 +#define  STM_TIM1_CR2_MMS_ENABLE		1 +#define  STM_TIM1_CR2_MMS_UPDATE		2 +#define  STM_TIM1_CR2_MMS_COMPARE_PULSE		3 +#define  STM_TIM1_CR2_MMS_COMPARE_OC1REF	4 +#define  STM_TIM1_CR2_MMS_COMPARE_OC2REF	5 +#define  STM_TIM1_CR2_MMS_COMPARE_OC3REF	6 +#define  STM_TIM1_CR2_MMS_COMPARE_OC4REF	7 +#define STM_TIM1_CR2_CCDS	3 +#define STM_TIM1_CR2_CCUS	2 +#define STM_TIM1_CR2_CCPC	0 + +#define STM_TIM1_SMCR_ETP	15 +#define STM_TIM1_SMCR_ECE	14 +#define STM_TIM1_SMCR_ETPS	12 +#define  STM_TIM1_SMCR_ETPS_OFF		0 +#define  STM_TIM1_SMCR_ETPS_DIV_2	1 +#define  STM_TIM1_SMCR_ETPS_DIV_4	2 +#define  STM_TIM1_SMCR_ETPS_DIV_8	3 + +#define STM_TIM1_SMCR_ETF	8 +#define  STM_TIM1_SMCR_ETF_NONE		0 +#define  STM_TIM1_SMCR_ETF_DIV_1_N_2	1 +#define  STM_TIM1_SMCR_ETF_DIV_1_N_4	2 +#define  STM_TIM1_SMCR_ETF_DIV_1_N_8	3 +#define  STM_TIM1_SMCR_ETF_DIV_2_N_6	4 +#define  STM_TIM1_SMCR_ETF_DIV_2_N_8	5 +#define  STM_TIM1_SMCR_ETF_DIV_4_N_6	6 +#define  STM_TIM1_SMCR_ETF_DIV_4_N_8	7 +#define  STM_TIM1_SMCR_ETF_DIV_8_N_6	8 +#define  STM_TIM1_SMCR_ETF_DIV_8_N_8	9 +#define  STM_TIM1_SMCR_ETF_DIV_16_N_5	10 +#define  STM_TIM1_SMCR_ETF_DIV_16_N_6	11 +#define  STM_TIM1_SMCR_ETF_DIV_16_N_8	12 +#define  STM_TIM1_SMCR_ETF_DIV_32_N_5	13 +#define  STM_TIM1_SMCR_ETF_DIV_32_N_6	14 +#define  STM_TIM1_SMCR_ETF_DIV_32_N_8	15 + +#define STM_TIM1_SMCR_MSM	7 +#define STM_TIM1_SMCR_TS	4 +#define  STM_TIM1_SMCR_TS_ITR0		0 +#define  STM_TIM1_SMCR_TS_ITR1		1 +#define  STM_TIM1_SMCR_TS_ITR2		2 +#define  STM_TIM1_SMCR_TS_ITR3		3 +#define  STM_TIM1_SMCR_TS_TI1F_ED	4 +#define  STM_TIM1_SMCR_TS_TI1FP1	5 +#define  STM_TIM1_SMCR_TS_TI2FP2	6 +#define  STM_TIM1_SMCR_TS_ETRF		7 + +#define STM_TIM1_SMCR_OCCS	3 +#define STM_TIM1_SMCR_SMS	0 +#define  STM_TIM1_SMCR_SMS_DISABLE	0 +#define  STM_TIM1_SMCR_SMS_ENCODER_1	1 +#define  STM_TIM1_SMCR_SMS_ENCODER_2	2 +#define  STM_TIM1_SMCR_SMS_ENCODER_3	3 +#define  STM_TIM1_SMCR_SMS_RESET	4 +#define  STM_TIM1_SMCR_SMS_GATED	5 +#define  STM_TIM1_SMCR_SMS_TRIGGER	6 +#define  STM_TIM1_SMCR_SMS_EXTERNAL	7 + +#define STM_TIM1_DIER_TDE	14 +#define STM_TIM1_DIER_COMDE	13 +#define STM_TIM1_DIER_CC4DE	12 +#define STM_TIM1_DIER_CC3DE	11 +#define STM_TIM1_DIER_CC2DE	10 +#define STM_TIM1_DIER_CC1DE	9 +#define STM_TIM1_DIER_UDE	8 +#define STM_TIM1_DIER_BIE	7 +#define STM_TIM1_DIER_TIE	6 +#define STM_TIM1_DIER_COMIE	5 +#define STM_TIM1_DIER_CC4IE	4 +#define STM_TIM1_DIER_CC3IE	3 +#define STM_TIM1_DIER_CC2IE	2 +#define STM_TIM1_DIER_CC1IE	1 +#define STM_TIM1_DIER_UIE	0 + +#define STM_TIM1_SR_CC4OF	12 +#define STM_TIM1_SR_CC3OF	11 +#define STM_TIM1_SR_CC2OF	10 +#define STM_TIM1_SR_CC1OF	9 +#define STM_TIM1_SR_BIF		7 +#define STM_TIM1_SR_TIF		6 +#define STM_TIM1_SR_COMIF	5 +#define STM_TIM1_SR_CC4IF	4 +#define STM_TIM1_SR_CC3IF	3 +#define STM_TIM1_SR_CC2IF	2 +#define STM_TIM1_SR_CC1IF	1 +#define STM_TIM1_SR_UIF		0 + +#define STM_TIM1_EGR_BG		7 +#define STM_TIM1_EGR_TG		6 +#define STM_TIM1_EGR_COMG	5 +#define STM_TIM1_EGR_CC4G	4 +#define STM_TIM1_EGR_CC3G	3 +#define STM_TIM1_EGR_CC2G	2 +#define STM_TIM1_EGR_CC1G	1 +#define STM_TIM1_EGR_UG		0 + +#define STM_TIM1_CCMR1_OC2CE	15 +#define STM_TIM1_CCMR1_OC2M	12 +#define STM_TIM1_CCMR1_OC2PE	11 +#define STM_TIM1_CCMR1_OC2FE	10 +#define STM_TIM1_CCMR1_CC2S	8 +#define STM_TIM1_CCMR1_OC1CE	7 +#define STM_TIM1_CCMR1_OC1M	4 +#define  STM_TIM1_CCMR_OCM_FROZEN		0 +#define  STM_TIM1_CCMR_OCM_1_HIGH_MATCH		1 +#define  STM_TIM1_CCMR_OCM_1_LOW_MATCH		2 +#define  STM_TIM1_CCMR_OCM_TOGGLE		3 +#define  STM_TIM1_CCMR_OCM_FORCE_LOW		4 +#define  STM_TIM1_CCMR_OCM_FORCE_HIGH		5 +#define  STM_TIM1_CCMR_OCM_PWM_MODE_1		6 +#define  STM_TIM1_CCMR_OCM_PWM_MODE_2		7 + +#define STM_TIM1_CCMR1_OC1PE	3 +#define STM_TIM1_CCMR1_OC1FE	2 +#define STM_TIM1_CCMR1_CC1S	0 +#define  STM_TIM1_CCMR_CCS_OUTPUT	0 +#define  STM_TIM1_CCMR_CCS_INPUT_TI1	1 +#define  STM_TIM1_CCMR_CCS_INPUT_TI2	2 +#define  STM_TIM1_CCMR_CCS_INPUT_TRC	3 + +#define STM_TIM1_CCMR1_IC2F	12 +#define STM_TIM1_CCMR1_IC2PSC	10 +#define STM_TIM1_CCMR1_CC2S	8 +#define STM_TIM1_CCMR1_IC1F	4 +#define  STM_TIM1_CCMR1_IC1F_NONE	0 +#define  STM_TIM1_CCMR1_IC1F_DIV_1_N_2	1 +#define  STM_TIM1_CCMR1_IC1F_DIV_1_N_4	2 +#define  STM_TIM1_CCMR1_IC1F_DIV_1_N_8	3 +#define  STM_TIM1_CCMR1_IC1F_DIV_2_N_6	4 +#define  STM_TIM1_CCMR1_IC1F_DIV_2_N_8	5 +#define  STM_TIM1_CCMR1_IC1F_DIV_4_N_6	6 +#define  STM_TIM1_CCMR1_IC1F_DIV_4_N_8	7 +#define  STM_TIM1_CCMR1_IC1F_DIV_8_N_6	8 +#define  STM_TIM1_CCMR1_IC1F_DIV_8_N_8	9 +#define  STM_TIM1_CCMR1_IC1F_DIV_16_N_5	10 +#define  STM_TIM1_CCMR1_IC1F_DIV_16_N_6	11 +#define  STM_TIM1_CCMR1_IC1F_DIV_16_N_8	12 +#define  STM_TIM1_CCMR1_IC1F_DIV_32_N_5	13 +#define  STM_TIM1_CCMR1_IC1F_DIV_32_N_6	14 +#define  STM_TIM1_CCMR1_IC1F_DIV_32_N_8	15 + +#define STM_TIM1_CCMR1_IC1PSC	2 +#define  STM_TIM1_CCMR1_IC1PSC_NONE	0 +#define  STM_TIM1_CCMR1_IC1PSC_2	1 +#define  STM_TIM1_CCMR1_IC1PSC_4	2 +#define  STM_TIM1_CCMR1_IC1PSC_8	3 + +#define STM_TIM1_CCMR1_CC1S	0 +#define  STM_TIM1_CCMR1_CC1S_OUTPUT	0 +#define  STM_TIM1_CCMR1_CC1S_TI1	1 +#define  STM_TIM1_CCMR1_CC1S_TI2	2 +#define  STM_TIM1_CCMR1_CC1S_TRC	3 + +#define STM_TIM1_CCMR2_OC4CE	15 +#define STM_TIM1_CCMR2_OC4M	12 +#define STM_TIM1_CCMR2_OC4PE	11 +#define STM_TIM1_CCMR2_OC4FE	10 +#define STM_TIM1_CCMR2_CC4S	8 +#define  STM_TIM1_CCMR2_CCS_OUTPUT	0 +#define  STM_TIM1_CCMR2_CCS_INPUT_TI3	1 +#define  STM_TIM1_CCMR2_CCS_INPUT_TI4	2 +#define  STM_TIM1_CCMR2_CCS_INPUT_TRC	3 +#define STM_TIM1_CCMR2_OC3CE	7 +#define STM_TIM1_CCMR2_OC3M	4 +#define STM_TIM1_CCMR2_OC3PE	3 +#define STM_TIM1_CCMR2_OC3FE	2 +#define STM_TIM1_CCMR2_CC3S	0 + +#define STM_TIM1_CCMR2_IC4F	12 +#define STM_TIM1_CCMR2_IC2PSC	10 +#define STM_TIM1_CCMR2_CC4S	8 +#define STM_TIM1_CCMR2_IC3F	4 +#define  STM_TIM1_CCMR2_IC1F_NONE	0 +#define  STM_TIM1_CCMR2_IC1F_DIV_1_N_2	1 +#define  STM_TIM1_CCMR2_IC1F_DIV_1_N_4	2 +#define  STM_TIM1_CCMR2_IC1F_DIV_1_N_8	3 +#define  STM_TIM1_CCMR2_IC1F_DIV_2_N_6	4 +#define  STM_TIM1_CCMR2_IC1F_DIV_2_N_8	5 +#define  STM_TIM1_CCMR2_IC1F_DIV_4_N_6	6 +#define  STM_TIM1_CCMR2_IC1F_DIV_4_N_8	7 +#define  STM_TIM1_CCMR2_IC1F_DIV_8_N_6	8 +#define  STM_TIM1_CCMR2_IC1F_DIV_8_N_8	9 +#define  STM_TIM1_CCMR2_IC1F_DIV_16_N_5	10 +#define  STM_TIM1_CCMR2_IC1F_DIV_16_N_6	11 +#define  STM_TIM1_CCMR2_IC1F_DIV_16_N_8	12 +#define  STM_TIM1_CCMR2_IC1F_DIV_32_N_5	13 +#define  STM_TIM1_CCMR2_IC1F_DIV_32_N_6	14 +#define  STM_TIM1_CCMR2_IC1F_DIV_32_N_8	15 + +#define STM_TIM1_CCER_CC4P	13 +#define STM_TIM1_CCER_CC4E	12 +#define STM_TIM1_CCER_CC3NP	11 +#define STM_TIM1_CCER_CC3NE	10 +#define STM_TIM1_CCER_CC3P	9 +#define STM_TIM1_CCER_CC3E	8 +#define STM_TIM1_CCER_CC2NP	7 +#define STM_TIM1_CCER_CC2NE	6 +#define STM_TIM1_CCER_CC2P	5 +#define STM_TIM1_CCER_CC2E	4 +#define STM_TIM1_CCER_CC1BP	3 +#define STM_TIM1_CCER_CC1NE	2 +#define STM_TIM1_CCER_CC1P	1 +#define STM_TIM1_CCER_CC1E	0 + +#define STM_TIM1_BDTR_MOE	15 +#define STM_TIM1_BDTR_AOE	14 +#define STM_TIM1_BDTR_BKP	13 +#define STM_TIM1_BDTR_BKE	12 +#define STM_TIM1_BDTR_OSSR	11 +#define STM_TIM1_BDTR_OSSI	10 +#define STM_TIM1_BDTR_LOCK	8 +#define  STM_TIM1_BDTR_LOCK_OFF		0 +#define  STM_TIM1_BDTR_LOCK_LEVEL_1	1 +#define  STM_TIM1_BDTR_LOCK_LEVEL_2	2 +#define  STM_TIM1_BDTR_LOCK_LEVEL_3	3 + +#define STM_TIM1_BDTR_DTG	0 + +#define STM_TIM1_DCR_DBL	8 +#define STM_TIM1_DCR_DBA	0 + +extern struct stm_tim1 stm_tim1; + +#define stm_tim1	(*(struct stm_tim1 *)0x40012c00) +  struct stm_tim23 {  	vuint32_t	cr1;  	vuint32_t	cr2; @@ -1518,15 +1812,15 @@ extern struct stm_tim23 stm_tim2, stm_tim3;  #define STM_TIM23_CCMR2_OC4CE	15  #define STM_TIM23_CCMR2_OC4M	12 -#define  STM_TIM23_CCMR2_OC4M_FROZEN			0 -#define  STM_TIM23_CCMR2_OC4M_SET_HIGH_ON_MATCH	1 -#define  STM_TIM23_CCMR2_OC4M_SET_LOW_ON_MATCH		2 -#define  STM_TIM23_CCMR2_OC4M_TOGGLE			3 -#define  STM_TIM23_CCMR2_OC4M_FORCE_LOW			4 -#define  STM_TIM23_CCMR2_OC4M_FORCE_HIGH		5 -#define  STM_TIM23_CCMR2_OC4M_PWM_MODE_1		6 -#define  STM_TIM23_CCMR2_OC4M_PWM_MODE_2		7 -#define  STM_TIM23_CCMR2_OC4M_MASK			7 +#define  STM_TIM23_CCMR2_OCM_FROZEN			0 +#define  STM_TIM23_CCMR2_OCM_SET_HIGH_ON_MATCH	1 +#define  STM_TIM23_CCMR2_OCM_SET_LOW_ON_MATCH		2 +#define  STM_TIM23_CCMR2_OCM_TOGGLE			3 +#define  STM_TIM23_CCMR2_OCM_FORCE_LOW			4 +#define  STM_TIM23_CCMR2_OCM_FORCE_HIGH			5 +#define  STM_TIM23_CCMR2_OCM_PWM_MODE_1			6 +#define  STM_TIM23_CCMR2_OCM_PWM_MODE_2			7 +#define  STM_TIM23_CCMR2_OCM_MASK			7  #define STM_TIM23_CCMR2_OC4PE	11  #define STM_TIM23_CCMR2_OC4FE	10  #define STM_TIM23_CCMR2_CC4S	8 @@ -1538,15 +1832,15 @@ extern struct stm_tim23 stm_tim2, stm_tim3;  #define STM_TIM23_CCMR2_OC3CE	7  #define STM_TIM23_CCMR2_OC3M	4 -#define  STM_TIM23_CCMR2_OC3M_FROZEN			0 -#define  STM_TIM23_CCMR2_OC3M_SET_HIGH_ON_MATCH		1 -#define  STM_TIM23_CCMR2_OC3M_SET_LOW_ON_MATCH		2 -#define  STM_TIM23_CCMR2_OC3M_TOGGLE			3 -#define  STM_TIM23_CCMR2_OC3M_FORCE_LOW			4 -#define  STM_TIM23_CCMR2_OC3M_FORCE_HIGH		5 +#define  STM_TIM23_CCMR2_OCM_FROZEN			0 +#define  STM_TIM23_CCMR2_OCM_SET_HIGH_ON_MATCH		1 +#define  STM_TIM23_CCMR2_OCM_SET_LOW_ON_MATCH		2 +#define  STM_TIM23_CCMR2_OCM_TOGGLE			3 +#define  STM_TIM23_CCMR2_OCM_FORCE_LOW			4 +#define  STM_TIM23_CCMR2_OCM_FORCE_HIGH			5  #define  STM_TIM23_CCMR2_OC3M_PWM_MODE_1		6 -#define  STM_TIM23_CCMR2_OC3M_PWM_MODE_2		7 -#define  STM_TIM23_CCMR2_OC3M_MASK			7 +#define  STM_TIM23_CCMR2_OCM_PWM_MODE_2			7 +#define  STM_TIM23_CCMR2_OCM_MASK			7  #define STM_TIM23_CCMR2_OC3PE	11  #define STM_TIM23_CCMR2_OC3FE	2  #define STM_TIM23_CCMR2_CC3S	0 diff --git a/src/teleballoon-v1.1/ao_pins.h b/src/teleballoon-v1.1/ao_pins.h index 4c23ca88..2bf4d593 100644 --- a/src/teleballoon-v1.1/ao_pins.h +++ b/src/teleballoon-v1.1/ao_pins.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 diff --git a/src/teleballoon-v1.1/ao_teleballoon.c b/src/teleballoon-v1.1/ao_teleballoon.c index 867e98ab..bdbf91d4 100644 --- a/src/teleballoon-v1.1/ao_teleballoon.c +++ b/src/teleballoon-v1.1/ao_teleballoon.c @@ -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 diff --git a/src/teleballoon-v2.0/ao_pins.h b/src/teleballoon-v2.0/ao_pins.h index b62b5580..746bb3ee 100644 --- a/src/teleballoon-v2.0/ao_pins.h +++ b/src/teleballoon-v2.0/ao_pins.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 diff --git a/src/teleballoon-v2.0/ao_teleballoon.c b/src/teleballoon-v2.0/ao_teleballoon.c index 9b506814..2432c272 100644 --- a/src/teleballoon-v2.0/ao_teleballoon.c +++ b/src/teleballoon-v2.0/ao_teleballoon.c @@ -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 diff --git a/src/telebt-v1.0/ao_pins.h b/src/telebt-v1.0/ao_pins.h index 4181ef35..ca751be3 100644 --- a/src/telebt-v1.0/ao_pins.h +++ b/src/telebt-v1.0/ao_pins.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 diff --git a/src/telebt-v1.0/ao_telebt.c b/src/telebt-v1.0/ao_telebt.c index 935cde7d..a56adc92 100644 --- a/src/telebt-v1.0/ao_telebt.c +++ b/src/telebt-v1.0/ao_telebt.c @@ -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 diff --git a/src/telebt-v3.0/ao_pins.h b/src/telebt-v3.0/ao_pins.h index 50584940..61cbe9bb 100644 --- a/src/telebt-v3.0/ao_pins.h +++ b/src/telebt-v3.0/ao_pins.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 diff --git a/src/telebt-v3.0/ao_telebt.c b/src/telebt-v3.0/ao_telebt.c index 1fe06b1a..9117863b 100644 --- a/src/telebt-v3.0/ao_telebt.c +++ b/src/telebt-v3.0/ao_telebt.c @@ -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 @@ -32,7 +33,7 @@ main(void)  	ao_task_init();  	ao_led_init(LEDS_AVAILABLE); -	ao_led_on(AO_LED_RED); +	ao_led_on(LEDS_AVAILABLE);  	ao_timer_init();  	ao_spi_init(); @@ -52,7 +53,7 @@ main(void)  	ao_config_init(); -	ao_led_off(AO_LED_RED); +	ao_led_off(LEDS_AVAILABLE);  	ao_start_scheduler();  	return 0; diff --git a/src/telebt-v3.0/flash-loader/ao_pins.h b/src/telebt-v3.0/flash-loader/ao_pins.h index 8711548d..139934fa 100644 --- a/src/telebt-v3.0/flash-loader/ao_pins.h +++ b/src/telebt-v3.0/flash-loader/ao_pins.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 diff --git a/src/teledongle-v1.8/ao_pins.h b/src/teledongle-v1.8/ao_pins.h index cff3e5e8..72bea368 100644 --- a/src/teledongle-v1.8/ao_pins.h +++ b/src/teledongle-v1.8/ao_pins.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 diff --git a/src/teledongle-v1.8/ao_teledongle.c b/src/teledongle-v1.8/ao_teledongle.c index 5ce6b15b..7fd6acdb 100644 --- a/src/teledongle-v1.8/ao_teledongle.c +++ b/src/teledongle-v1.8/ao_teledongle.c @@ -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 diff --git a/src/teledongle-v3.0/ao_pins.h b/src/teledongle-v3.0/ao_pins.h index 52a86fcb..effc2322 100644 --- a/src/teledongle-v3.0/ao_pins.h +++ b/src/teledongle-v3.0/ao_pins.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 diff --git a/src/teledongle-v3.0/ao_teledongle.c b/src/teledongle-v3.0/ao_teledongle.c index 02b93efe..32899af2 100644 --- a/src/teledongle-v3.0/ao_teledongle.c +++ b/src/teledongle-v3.0/ao_teledongle.c @@ -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 @@ -31,7 +32,7 @@ main(void)  	ao_task_init();  	ao_led_init(LEDS_AVAILABLE); -	ao_led_on(AO_LED_RED); +	ao_led_on(LEDS_AVAILABLE);  	ao_timer_init();  	ao_spi_init(); @@ -47,7 +48,7 @@ main(void)  	ao_config_init(); -	ao_led_off(AO_LED_RED); +	ao_led_off(LEDS_AVAILABLE);  	ao_start_scheduler();  	return 0;  } diff --git a/src/teledongle-v3.0/flash-loader/ao_pins.h b/src/teledongle-v3.0/flash-loader/ao_pins.h index aee5be27..f06af5f3 100644 --- a/src/teledongle-v3.0/flash-loader/ao_pins.h +++ b/src/teledongle-v3.0/flash-loader/ao_pins.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 diff --git a/src/telefire-v0.1/ao_pins.h b/src/telefire-v0.1/ao_pins.h index 1087c7c9..ee0ca716 100644 --- a/src/telefire-v0.1/ao_pins.h +++ b/src/telefire-v0.1/ao_pins.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 diff --git a/src/telefire-v0.1/ao_telefire.c b/src/telefire-v0.1/ao_telefire.c index afa09e20..706a23a6 100644 --- a/src/telefire-v0.1/ao_telefire.c +++ b/src/telefire-v0.1/ao_telefire.c @@ -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 diff --git a/src/telefire-v0.2/ao_pins.h b/src/telefire-v0.2/ao_pins.h index 28cc65b9..4faeb65f 100644 --- a/src/telefire-v0.2/ao_pins.h +++ b/src/telefire-v0.2/ao_pins.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 diff --git a/src/telefire-v0.2/ao_telefire.c b/src/telefire-v0.2/ao_telefire.c index f27ca5e8..5187d5b9 100644 --- a/src/telefire-v0.2/ao_telefire.c +++ b/src/telefire-v0.2/ao_telefire.c @@ -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 diff --git a/src/telefiretwo-v0.1/ao_pins.h b/src/telefiretwo-v0.1/ao_pins.h index fd840f47..f56061b2 100644 --- a/src/telefiretwo-v0.1/ao_pins.h +++ b/src/telefiretwo-v0.1/ao_pins.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 diff --git a/src/telefiretwo-v0.1/ao_telefiretwo.c b/src/telefiretwo-v0.1/ao_telefiretwo.c index 38629d86..bdcf3213 100644 --- a/src/telefiretwo-v0.1/ao_telefiretwo.c +++ b/src/telefiretwo-v0.1/ao_telefiretwo.c @@ -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 diff --git a/src/telefiretwo-v0.1/flash-loader/ao_pins.h b/src/telefiretwo-v0.1/flash-loader/ao_pins.h index daa9048d..ded45a40 100644 --- a/src/telefiretwo-v0.1/flash-loader/ao_pins.h +++ b/src/telefiretwo-v0.1/flash-loader/ao_pins.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 diff --git a/src/telefiretwo-v0.2/ao_pins.h b/src/telefiretwo-v0.2/ao_pins.h index 0fddc6df..70af5dd1 100644 --- a/src/telefiretwo-v0.2/ao_pins.h +++ b/src/telefiretwo-v0.2/ao_pins.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 diff --git a/src/telefiretwo-v0.2/ao_telefiretwo.c b/src/telefiretwo-v0.2/ao_telefiretwo.c index 38629d86..bdcf3213 100644 --- a/src/telefiretwo-v0.2/ao_telefiretwo.c +++ b/src/telefiretwo-v0.2/ao_telefiretwo.c @@ -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 diff --git a/src/telefiretwo-v0.2/flash-loader/ao_pins.h b/src/telefiretwo-v0.2/flash-loader/ao_pins.h index daa9048d..ded45a40 100644 --- a/src/telefiretwo-v0.2/flash-loader/ao_pins.h +++ b/src/telefiretwo-v0.2/flash-loader/ao_pins.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 diff --git a/src/telegps-v0.1/ao_pins.h b/src/telegps-v0.1/ao_pins.h index 7ff59956..96e8cfd7 100644 --- a/src/telegps-v0.1/ao_pins.h +++ b/src/telegps-v0.1/ao_pins.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 diff --git a/src/telegps-v0.1/ao_telegps.c b/src/telegps-v0.1/ao_telegps.c index bc37b504..eb8ab72d 100644 --- a/src/telegps-v0.1/ao_telegps.c +++ b/src/telegps-v0.1/ao_telegps.c @@ -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 diff --git a/src/telegps-v0.1/flash-loader/ao_pins.h b/src/telegps-v0.1/flash-loader/ao_pins.h index 564e84de..a6b5db39 100644 --- a/src/telegps-v0.1/flash-loader/ao_pins.h +++ b/src/telegps-v0.1/flash-loader/ao_pins.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 diff --git a/src/telegps-v0.3/ao_pins.h b/src/telegps-v0.3/ao_pins.h index d0e4d835..9c650cc4 100644 --- a/src/telegps-v0.3/ao_pins.h +++ b/src/telegps-v0.3/ao_pins.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 diff --git a/src/telegps-v0.3/ao_telegps.c b/src/telegps-v0.3/ao_telegps.c index dd699ecf..abc80954 100644 --- a/src/telegps-v0.3/ao_telegps.c +++ b/src/telegps-v0.3/ao_telegps.c @@ -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 diff --git a/src/telegps-v0.3/flash-loader/ao_pins.h b/src/telegps-v0.3/flash-loader/ao_pins.h index 91097a25..56b8fde8 100644 --- a/src/telegps-v0.3/flash-loader/ao_pins.h +++ b/src/telegps-v0.3/flash-loader/ao_pins.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 diff --git a/src/telegps-v1.0/ao_pins.h b/src/telegps-v1.0/ao_pins.h index eb1033da..19774f63 100644 --- a/src/telegps-v1.0/ao_pins.h +++ b/src/telegps-v1.0/ao_pins.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 diff --git a/src/telegps-v1.0/ao_telegps.c b/src/telegps-v1.0/ao_telegps.c index 7a71699b..ae7e3156 100644 --- a/src/telegps-v1.0/ao_telegps.c +++ b/src/telegps-v1.0/ao_telegps.c @@ -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 diff --git a/src/telegps-v1.0/flash-loader/ao_pins.h b/src/telegps-v1.0/flash-loader/ao_pins.h index 91097a25..56b8fde8 100644 --- a/src/telegps-v1.0/flash-loader/ao_pins.h +++ b/src/telegps-v1.0/flash-loader/ao_pins.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 diff --git a/src/telelco-v0.1/ao_lco.c b/src/telelco-v0.1/ao_lco.c index cb2195ef..649bf586 100644 --- a/src/telelco-v0.1/ao_lco.c +++ b/src/telelco-v0.1/ao_lco.c @@ -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 diff --git a/src/telelco-v0.1/ao_lco.h b/src/telelco-v0.1/ao_lco.h index 253f9702..5721eed5 100644 --- a/src/telelco-v0.1/ao_lco.h +++ b/src/telelco-v0.1/ao_lco.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 diff --git a/src/telelco-v0.1/ao_pins.h b/src/telelco-v0.1/ao_pins.h index 970f9bd1..23115997 100644 --- a/src/telelco-v0.1/ao_pins.h +++ b/src/telelco-v0.1/ao_pins.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 diff --git a/src/telelco-v0.1/ao_telelco.c b/src/telelco-v0.1/ao_telelco.c index 70665ec6..608f093d 100644 --- a/src/telelco-v0.1/ao_telelco.c +++ b/src/telelco-v0.1/ao_telelco.c @@ -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 diff --git a/src/telelco-v0.2/ao_pins.h b/src/telelco-v0.2/ao_pins.h index da790b14..b90fca8b 100644 --- a/src/telelco-v0.2/ao_pins.h +++ b/src/telelco-v0.2/ao_pins.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 diff --git a/src/telelco-v0.2/ao_telelco.c b/src/telelco-v0.2/ao_telelco.c index d9f7c693..7b04d386 100644 --- a/src/telelco-v0.2/ao_telelco.c +++ b/src/telelco-v0.2/ao_telelco.c @@ -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 diff --git a/src/telelco-v0.2/flash-loader/ao_pins.h b/src/telelco-v0.2/flash-loader/ao_pins.h index 6c8ff7e2..72f840c0 100644 --- a/src/telelco-v0.2/flash-loader/ao_pins.h +++ b/src/telelco-v0.2/flash-loader/ao_pins.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 diff --git a/src/telelco-v0.3/ao_pins.h b/src/telelco-v0.3/ao_pins.h index 92095a7c..d874a19b 100644 --- a/src/telelco-v0.3/ao_pins.h +++ b/src/telelco-v0.3/ao_pins.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 diff --git a/src/telelco-v0.3/ao_telelco.c b/src/telelco-v0.3/ao_telelco.c index d9f7c693..7b04d386 100644 --- a/src/telelco-v0.3/ao_telelco.c +++ b/src/telelco-v0.3/ao_telelco.c @@ -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 diff --git a/src/telelco-v0.3/flash-loader/ao_pins.h b/src/telelco-v0.3/flash-loader/ao_pins.h index 6c8ff7e2..72f840c0 100644 --- a/src/telelco-v0.3/flash-loader/ao_pins.h +++ b/src/telelco-v0.3/flash-loader/ao_pins.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 diff --git a/src/telelcotwo-v0.1/ao_pins.h b/src/telelcotwo-v0.1/ao_pins.h index ce797a38..714a5c3a 100644 --- a/src/telelcotwo-v0.1/ao_pins.h +++ b/src/telelcotwo-v0.1/ao_pins.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 @@ -155,14 +156,12 @@  #define AO_BUTTON_0_PORT	&stm_gpioa  #define AO_BUTTON_0		0 -#define AO_BUTTON_ARM_0		0 +#define AO_BUTTON_BOX		0  #define AO_BUTTON_1_PORT	&stm_gpioa  #define AO_BUTTON_1		1 -#define AO_BUTTON_ARM_1		1 - -#define AO_BUTTON_ARM_NUM	2 +#define AO_BUTTON_ARM		1  #define AO_BUTTON_2_PORT	&stm_gpioa  #define AO_BUTTON_2		2 diff --git a/src/telelcotwo-v0.1/ao_telelcotwo.c b/src/telelcotwo-v0.1/ao_telelcotwo.c index 318875e3..b3fcd200 100644 --- a/src/telelcotwo-v0.1/ao_telelcotwo.c +++ b/src/telelcotwo-v0.1/ao_telelcotwo.c @@ -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 diff --git a/src/telelcotwo-v0.1/flash-loader/ao_pins.h b/src/telelcotwo-v0.1/flash-loader/ao_pins.h index 266bff6c..ee29a678 100644 --- a/src/telelcotwo-v0.1/flash-loader/ao_pins.h +++ b/src/telelcotwo-v0.1/flash-loader/ao_pins.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 diff --git a/src/telemega-v0.1/ao_pins.h b/src/telemega-v0.1/ao_pins.h index 1815ef54..11c4267c 100644 --- a/src/telemega-v0.1/ao_pins.h +++ b/src/telemega-v0.1/ao_pins.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 diff --git a/src/telemega-v0.1/ao_telemega.c b/src/telemega-v0.1/ao_telemega.c index 7b035269..3cfc9b44 100644 --- a/src/telemega-v0.1/ao_telemega.c +++ b/src/telemega-v0.1/ao_telemega.c @@ -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 diff --git a/src/telemega-v0.1/flash-loader/ao_pins.h b/src/telemega-v0.1/flash-loader/ao_pins.h index 1af92f13..2b18f8e5 100644 --- a/src/telemega-v0.1/flash-loader/ao_pins.h +++ b/src/telemega-v0.1/flash-loader/ao_pins.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 diff --git a/src/telemega-v1.0/ao_pins.h b/src/telemega-v1.0/ao_pins.h index 58b4d61a..4decbbf7 100644 --- a/src/telemega-v1.0/ao_pins.h +++ b/src/telemega-v1.0/ao_pins.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 diff --git a/src/telemega-v1.0/ao_telemega.c b/src/telemega-v1.0/ao_telemega.c index 7b035269..2deb852e 100644 --- a/src/telemega-v1.0/ao_telemega.c +++ b/src/telemega-v1.0/ao_telemega.c @@ -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 @@ -37,7 +38,7 @@ int  main(void)  {  	ao_clock_init(); -	 +  #if HAS_STACK_GUARD  	ao_mpu_init();  #endif @@ -45,7 +46,7 @@ main(void)  	ao_task_init();  	ao_serial_init();  	ao_led_init(LEDS_AVAILABLE); -	ao_led_on(AO_LED_GREEN); +	ao_led_on(LEDS_AVAILABLE);  	ao_timer_init();  	ao_i2c_init(); @@ -74,7 +75,7 @@ main(void)  	ao_eeprom_init();  	ao_storage_init(); -	 +  	ao_flight_init();  	ao_log_init();  	ao_report_init(); @@ -96,7 +97,8 @@ main(void)  #if HAS_SAMPLE_PROFILE  	ao_sample_profile_init();  #endif -	 + +	ao_led_off(LEDS_AVAILABLE);  	ao_start_scheduler();  	return 0;  } diff --git a/src/telemega-v1.0/flash-loader/ao_pins.h b/src/telemega-v1.0/flash-loader/ao_pins.h index 1af92f13..2b18f8e5 100644 --- a/src/telemega-v1.0/flash-loader/ao_pins.h +++ b/src/telemega-v1.0/flash-loader/ao_pins.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 diff --git a/src/telemega-v2.0/ao_pins.h b/src/telemega-v2.0/ao_pins.h index 242f0ab2..b1c472da 100644 --- a/src/telemega-v2.0/ao_pins.h +++ b/src/telemega-v2.0/ao_pins.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 diff --git a/src/telemega-v2.0/ao_telemega.c b/src/telemega-v2.0/ao_telemega.c index 86427107..7a1c46ae 100644 --- a/src/telemega-v2.0/ao_telemega.c +++ b/src/telemega-v2.0/ao_telemega.c @@ -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 @@ -38,7 +39,7 @@ int  main(void)  {  	ao_clock_init(); -	 +  #if HAS_STACK_GUARD  	ao_mpu_init();  #endif @@ -46,7 +47,7 @@ main(void)  	ao_task_init();  	ao_serial_init();  	ao_led_init(LEDS_AVAILABLE); -	ao_led_on(AO_LED_GREEN); +	ao_led_on(LEDS_AVAILABLE);  	ao_timer_init();  	ao_i2c_init(); @@ -75,7 +76,7 @@ main(void)  	ao_eeprom_init();  	ao_storage_init(); -	 +  	ao_flight_init();  	ao_log_init();  	ao_report_init(); @@ -97,9 +98,11 @@ main(void)  #if HAS_SAMPLE_PROFILE  	ao_sample_profile_init();  #endif -	 +  	ao_pwm_init(); +	ao_led_off(LEDS_AVAILABLE); +  	ao_start_scheduler();  	return 0;  } diff --git a/src/telemega-v2.0/flash-loader/ao_pins.h b/src/telemega-v2.0/flash-loader/ao_pins.h index 304bb7c3..936354ed 100644 --- a/src/telemega-v2.0/flash-loader/ao_pins.h +++ b/src/telemega-v2.0/flash-loader/ao_pins.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 diff --git a/src/telemetrum-v2.0/ao_pins.h b/src/telemetrum-v2.0/ao_pins.h index fbb38df2..d9063173 100644 --- a/src/telemetrum-v2.0/ao_pins.h +++ b/src/telemetrum-v2.0/ao_pins.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 diff --git a/src/telemetrum-v2.0/ao_telemetrum.c b/src/telemetrum-v2.0/ao_telemetrum.c index 46599cb2..5cf42a8d 100644 --- a/src/telemetrum-v2.0/ao_telemetrum.c +++ b/src/telemetrum-v2.0/ao_telemetrum.c @@ -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 @@ -35,7 +36,7 @@ int  main(void)  {  	ao_clock_init(); -	 +  #if HAS_STACK_GUARD  	ao_mpu_init();  #endif @@ -43,7 +44,7 @@ main(void)  	ao_task_init();  	ao_serial_init();  	ao_led_init(LEDS_AVAILABLE); -	ao_led_on(AO_LED_RED); +	ao_led_on(LEDS_AVAILABLE);  	ao_timer_init();  	ao_spi_init(); @@ -66,7 +67,7 @@ main(void)  	ao_eeprom_init();  	ao_storage_init(); -	 +  	ao_flight_init();  	ao_log_init();  	ao_report_init(); @@ -87,7 +88,8 @@ main(void)  #if HAS_SAMPLE_PROFILE  	ao_sample_profile_init();  #endif -	 +	ao_led_off(LEDS_AVAILABLE); +  	ao_start_scheduler();  	return 0;  } diff --git a/src/telemetrum-v2.0/flash-loader/ao_pins.h b/src/telemetrum-v2.0/flash-loader/ao_pins.h index 304bb7c3..936354ed 100644 --- a/src/telemetrum-v2.0/flash-loader/ao_pins.h +++ b/src/telemetrum-v2.0/flash-loader/ao_pins.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 diff --git a/src/telemetrum-v3.0/.gitignore b/src/telemetrum-v3.0/.gitignore new file mode 100644 index 00000000..35ce24d4 --- /dev/null +++ b/src/telemetrum-v3.0/.gitignore @@ -0,0 +1,2 @@ +ao_product.h +telemetrum-*.elf diff --git a/src/telemetrum-v3.0/Makefile b/src/telemetrum-v3.0/Makefile new file mode 100644 index 00000000..002cc3f6 --- /dev/null +++ b/src/telemetrum-v3.0/Makefile @@ -0,0 +1,130 @@ +# +# AltOS build +# +# + +include ../stm/Makefile.defs + +INC = \ +	ao.h \ +	ao_arch.h \ +	ao_arch_funcs.h \ +	ao_boot.h \ +	ao_companion.h \ +	ao_data.h \ +	ao_sample.h \ +	ao_pins.h \ +	altitude-pa.h \ +	ao_kalman.h \ +	ao_product.h \ +	ao_ms5607.h \ +	ao_mma655x.h \ +	ao_cc1200_CC1200.h \ +	ao_profile.h \ +	ao_task.h \ +	ao_whiten.h \ +	ao_sample_profile.h \ +	ao_mpu.h \ +	stm32l.h \ +	Makefile + +#PROFILE=ao_profile.c +#PROFILE_DEF=-DAO_PROFILE=1 + +#SAMPLE_PROFILE=ao_sample_profile.c \ +#	ao_sample_profile_timer.c +#SAMPLE_PROFILE_DEF=-DHAS_SAMPLE_PROFILE=1 + +#STACK_GUARD=ao_mpu_stm.c +#STACK_GUARD_DEF=-DHAS_STACK_GUARD=1 + +MATH_SRC=\ +	ef_log.c + +ALTOS_SRC = \ +	ao_boot_chain.c \ +	ao_interrupt.c \ +	ao_product.c \ +	ao_romconfig.c \ +	ao_cmd.c \ +	ao_config.c \ +	ao_task.c \ +	ao_led.c \ +	ao_stdio.c \ +	ao_panic.c \ +	ao_timer.c \ +	ao_mutex.c \ +	ao_serial_stm.c \ +	ao_gps_ublox.c \ +	ao_gps_show.c \ +	ao_gps_report_metrum.c \ +	ao_ignite.c \ +	ao_freq.c \ +	ao_dma_stm.c \ +	ao_spi_stm.c \ +	ao_cc1200.c \ +	ao_fec_tx.c \ +	ao_fec_rx.c \ +	ao_data.c \ +	ao_ms5607.c \ +	ao_mma655x.c \ +	ao_adc_stm.c \ +	ao_beep_stm.c \ +	ao_storage.c \ +	ao_m25.c \ +	ao_usb_stm.c \ +	ao_exti_stm.c \ +	ao_eeprom_stm.c \ +	ao_report.c \ +	ao_convert_pa.c \ +	ao_convert_volt.c \ +	ao_log.c \ +	ao_log_metrum.c \ +	ao_sample.c \ +	ao_kalman.c \ +	ao_flight.c \ +	ao_telemetry.c \ +	ao_packet_slave.c \ +	ao_packet.c \ +	ao_companion.c \ +	ao_aprs.c \ +	$(MATH_SRC) \ +	$(PROFILE) \ +	$(SAMPLE_PROFILE) \ +	$(STACK_GUARD) + +PRODUCT=TeleMetrum-v3.0 +PRODUCT_DEF=-DTELEMETRUM_V_3_0 +IDPRODUCT=0x000b + +CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) $(PROFILE_DEF) $(SAMPLE_PROFILE_DEF) $(STACK_GUARD_DEF) -Os -g + +PROGNAME=telemetrum-v3.0 +PROG=$(PROGNAME)-$(VERSION).elf +HEX=$(PROGNAME)-$(VERSION).ihx + +SRC=$(ALTOS_SRC) ao_telemetrum.c +OBJ=$(SRC:.c=.o) + +all: $(PROG) $(HEX) + +$(PROG): Makefile $(OBJ) altos.ld +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS) + +../altitude-pa.h: make-altitude-pa +	nickle $< > $@ + +$(OBJ): $(INC) + +ao_product.h: ao-make-product.5c ../Version +	$(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ + +distclean:	clean + +clean: +	rm -f *.o $(PROGNAME)-*.elf $(PROGNAME)-*.ihx +	rm -f ao_product.h + +install: + +uninstall: diff --git a/src/telemetrum-v3.0/ao_pins.h b/src/telemetrum-v3.0/ao_pins.h new file mode 100644 index 00000000..ccf2f18f --- /dev/null +++ b/src/telemetrum-v3.0/ao_pins.h @@ -0,0 +1,316 @@ +/* + * Copyright © 2012 Keith Packard <keithp@keithp.com> + * + * 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; 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 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ + +#ifndef _AO_PINS_H_ +#define _AO_PINS_H_ + +#define HAS_TASK_QUEUE		1 + +/* 8MHz High speed external crystal */ +#define AO_HSE			8000000 + +/* PLLVCO = 96MHz (so that USB will work) */ +#define AO_PLLMUL		12 +#define AO_RCC_CFGR_PLLMUL	(STM_RCC_CFGR_PLLMUL_12) + +/* SYSCLK = 32MHz (no need to go faster than CPU) */ +#define AO_PLLDIV		3 +#define AO_RCC_CFGR_PLLDIV	(STM_RCC_CFGR_PLLDIV_3) + +/* HCLK = 32MHz (CPU clock) */ +#define AO_AHB_PRESCALER	1 +#define AO_RCC_CFGR_HPRE_DIV	STM_RCC_CFGR_HPRE_DIV_1 + +/* Run APB1 at 16MHz (HCLK/2) */ +#define AO_APB1_PRESCALER	2 +#define AO_RCC_CFGR_PPRE1_DIV	STM_RCC_CFGR_PPRE2_DIV_2 + +/* Run APB2 at 16MHz (HCLK/2) */ +#define AO_APB2_PRESCALER	2 +#define AO_RCC_CFGR_PPRE2_DIV	STM_RCC_CFGR_PPRE2_DIV_2 + +#define HAS_SERIAL_1		0 +#define USE_SERIAL_1_STDIN	0 +#define SERIAL_1_PB6_PB7	0 +#define SERIAL_1_PA9_PA10	1 + +#define HAS_SERIAL_2		0 +#define USE_SERIAL_2_STDIN	0 +#define SERIAL_2_PA2_PA3	0 +#define SERIAL_2_PD5_PD6	0 + +#define HAS_SERIAL_3		1 +#define USE_SERIAL_3_STDIN	0 +#define SERIAL_3_PB10_PB11	1 +#define SERIAL_3_PC10_PC11	0 +#define SERIAL_3_PD8_PD9	0 + +#define AO_CONFIG_DEFAULT_FLIGHT_LOG_MAX	(512 * 1024) +#define AO_CONFIG_MAX_SIZE			1024 +#define LOG_ERASE_MARK				0x55 +#define LOG_MAX_ERASE				128 + +#define HAS_EEPROM		1 +#define USE_INTERNAL_FLASH	0 +#define USE_EEPROM_CONFIG	1 +#define USE_STORAGE_CONFIG	0 +#define HAS_USB			1 +#define HAS_BEEP		1 +#define HAS_BATTERY_REPORT	1 +#define BEEPER_CHANNEL		4 +#define HAS_RADIO		1 +#define HAS_TELEMETRY		1 +#define HAS_APRS		1 +#define HAS_COMPANION		1 + +#define HAS_SPI_1		1 +#define SPI_1_PA5_PA6_PA7	1	/* Barometer */ +#define SPI_1_PB3_PB4_PB5	1	/* Accelerometer */ +#define SPI_1_PE13_PE14_PE15	0 +#define SPI_1_OSPEEDR		STM_OSPEEDR_10MHz + +#define HAS_SPI_2		1 +#define SPI_2_PB13_PB14_PB15	1	/* Flash, Companion, Radio */ +#define SPI_2_PD1_PD3_PD4	0 +#define SPI_2_OSPEEDR		STM_OSPEEDR_10MHz + +#define SPI_2_PORT		(&stm_gpiob) +#define SPI_2_SCK_PIN		13 +#define SPI_2_MISO_PIN		14 +#define SPI_2_MOSI_PIN		15 + +#define HAS_I2C_1		0 +#define I2C_1_PB8_PB9		0 + +#define HAS_I2C_2		0 +#define I2C_2_PB10_PB11		0 + +#define PACKET_HAS_SLAVE	1 +#define PACKET_HAS_MASTER	0 + +#define LOW_LEVEL_DEBUG		0 + +#define LED_PORT_ENABLE		STM_RCC_AHBENR_GPIOCEN +#define LED_PORT		(&stm_gpioc) +#define LED_PIN_RED		14 +#define LED_PIN_GREEN		15 +#define AO_LED_RED		(1 << LED_PIN_RED) +#define AO_LED_GREEN		(1 << LED_PIN_GREEN) + +#define LEDS_AVAILABLE		(AO_LED_RED | AO_LED_GREEN) + +#define HAS_GPS			1 +#define HAS_FLIGHT		1 +#define HAS_ADC			1 +#define HAS_ADC_TEMP		1 +#define HAS_LOG			1 + +/* + * Igniter + */ + +#define HAS_IGNITE		1 +#define HAS_IGNITE_REPORT	1 + +#define AO_SENSE_DROGUE(p)	((p)->adc.sense_a) +#define AO_SENSE_MAIN(p)	((p)->adc.sense_m) +#define AO_IGNITER_CLOSED	400 +#define AO_IGNITER_OPEN		60 + +/* Drogue */ +#define AO_IGNITER_DROGUE_PORT	(&stm_gpioa) +#define AO_IGNITER_DROGUE_PIN	8 + +/* Main */ +#define AO_IGNITER_MAIN_PORT	(&stm_gpioa) +#define AO_IGNITER_MAIN_PIN	9 + +#define AO_IGNITER_SET_DROGUE(v)	stm_gpio_set(AO_IGNITER_DROGUE_PORT, AO_IGNITER_DROGUE_PIN, v) +#define AO_IGNITER_SET_MAIN(v)		stm_gpio_set(AO_IGNITER_MAIN_PORT, AO_IGNITER_MAIN_PIN, v) + +/* + * ADC + */ +#define AO_DATA_RING		32 +#define AO_ADC_NUM_SENSE	2 + +struct ao_adc { +	int16_t			sense_a; +	int16_t			sense_m; +	int16_t			v_batt; +	int16_t			temp; +}; + +#define AO_ADC_DUMP(p) \ +	printf("tick: %5u drogue: %5d main: %5d batt: %5d\n", \ +	       (p)->tick, \ +	       (p)->adc.sense_a, (p)->adc.sense_m, \ +	       (p)->adc.v_batt); + +#define AO_ADC_SENSE_DROGUE	0 +#define AO_ADC_SENSE_DROGUE_PORT	(&stm_gpioa) +#define AO_ADC_SENSE_DROGUE_PIN	0 + +#define AO_ADC_SENSE_MAIN	1 +#define AO_ADC_SENSE_MAIN_PORT	(&stm_gpioa) +#define AO_ADC_SENSE_MAIN_PIN	1 + +#define AO_ADC_V_BATT		8 +#define AO_ADC_V_BATT_PORT	(&stm_gpiob) +#define AO_ADC_V_BATT_PIN	0 + +#define AO_ADC_TEMP		16 + +#define AO_ADC_RCC_AHBENR	((1 << STM_RCC_AHBENR_GPIOAEN) | \ +				 (1 << STM_RCC_AHBENR_GPIOEEN) | \ +				 (1 << STM_RCC_AHBENR_GPIOBEN)) + +#define AO_NUM_ADC_PIN		3 + +#define AO_ADC_PIN0_PORT	AO_ADC_SENSE_DROGUE_PORT +#define AO_ADC_PIN0_PIN		AO_ADC_SENSE_DROGUE_PIN +#define AO_ADC_PIN1_PORT	AO_ADC_SENSE_MAIN_PORT +#define AO_ADC_PIN1_PIN		AO_ADC_SENSE_MAIN_PIN +#define AO_ADC_PIN2_PORT	AO_ADC_V_BATT_PORT +#define AO_ADC_PIN2_PIN		AO_ADC_V_BATT_PIN + +#define AO_NUM_ADC	       	(AO_NUM_ADC_PIN + 1) + +#define AO_ADC_SQ1		AO_ADC_SENSE_DROGUE +#define AO_ADC_SQ2		AO_ADC_SENSE_MAIN +#define AO_ADC_SQ3		AO_ADC_V_BATT +#define AO_ADC_SQ4		AO_ADC_TEMP + +/* + * Voltage divider on ADC battery sampler + */ +#define AO_BATTERY_DIV_PLUS	56	/* 5.6k */ +#define AO_BATTERY_DIV_MINUS	100	/* 10k */ + +/* + * Voltage divider on ADC igniter samplers + */ +#define AO_IGNITE_DIV_PLUS	100	/* 100k */ +#define AO_IGNITE_DIV_MINUS	27	/* 27k */ + +/* + * ADC reference in decivolts + */ +#define AO_ADC_REFERENCE_DV	33 + +/* + * GPS + */ + +#define AO_SERIAL_SPEED_UBLOX	AO_SERIAL_SPEED_9600 + +#define ao_gps_getchar		ao_serial3_getchar +#define ao_gps_putchar		ao_serial3_putchar +#define ao_gps_set_speed	ao_serial3_set_speed +#define ao_gps_fifo		(ao_stm_usart3.rx_fifo) + +/* + * Pressure sensor settings + */ +#define HAS_MS5607		1 +#define HAS_MS5611		0 +#define AO_MS5607_PRIVATE_PINS	1 +#define AO_MS5607_CS_PORT	(&stm_gpiob) +#define AO_MS5607_CS_PIN	12 +#define AO_MS5607_CS_MASK	(1 << AO_MS5607_CS) +#define AO_MS5607_MISO_PORT	(&stm_gpioa) +#define AO_MS5607_MISO_PIN	6 +#define AO_MS5607_MISO_MASK	(1 << AO_MS5607_MISO) +#define AO_MS5607_SPI_INDEX	AO_SPI_1_PA5_PA6_PA7 + +/* + * SPI Flash memory + */ + +#define M25_MAX_CHIPS		1 +#define AO_M25_SPI_CS_PORT	(&stm_gpiob) +#define AO_M25_SPI_CS_MASK	(1 << 8) +#define AO_M25_SPI_BUS		AO_SPI_2_PB13_PB14_PB15 + +/* + * Radio (cc1200) + */ + +/* gets pretty close to 434.550 */ + +#define AO_RADIO_CAL_DEFAULT 	5695733 + +#define AO_CC1200_SPI_CS_PORT	(&stm_gpioa) +#define AO_CC1200_SPI_CS_PIN	2 +#define AO_CC1200_SPI_BUS	AO_SPI_2_PB13_PB14_PB15 +#define AO_CC1200_SPI		stm_spi2 + +#define AO_CC1200_INT_PORT		(&stm_gpioa) +#define AO_CC1200_INT_PIN		(3) +#define AO_CC1200_MCU_WAKEUP_PORT	(&stm_gpioa) +#define AO_CC1200_MCU_WAKEUP_PIN	(4) + +#define AO_CC1200_INT_GPIO	2 +#define AO_CC1200_INT_GPIO_IOCFG	CC1200_IOCFG2 + +#define AO_CC1200_MARC_GPIO	3 +#define AO_CC1200_MARC_GPIO_IOCFG	CC1200_IOCFG3 + +#define HAS_BOOT_RADIO		0 + +#define HAS_HIGHG_ACCEL		1 + +/* + * mma655x + */ + +#define HAS_MMA655X		1 +#define AO_MMA655X_SPI_INDEX	AO_SPI_1_PB3_PB4_PB5 +#define AO_MMA655X_CS_PORT	(&stm_gpiob) +#define AO_MMA655X_CS_PIN	9 +#define AO_MMA655X_INVERT	1 + +#define NUM_CMDS		16 + +/* + * Companion + */ + +#define AO_COMPANION_CS_PORT	(&stm_gpiob) +#define AO_COMPANION_CS_PIN	(6) +#define AO_COMPANION_SPI_BUS	AO_SPI_2_PB13_PB14_PB15 + +/* + * Monitor + */ + +#define HAS_MONITOR		0 +#define LEGACY_MONITOR		0 +#define HAS_MONITOR_PUT		1 +#define AO_MONITOR_LED		0 +#define HAS_RSSI		0 + +/* + * Profiling Viterbi decoding + */ + +#ifndef AO_PROFILE +#define AO_PROFILE	       	0 +#endif + +#endif /* _AO_PINS_H_ */ diff --git a/src/telemetrum-v3.0/ao_telemetrum.c b/src/telemetrum-v3.0/ao_telemetrum.c new file mode 100644 index 00000000..6349d188 --- /dev/null +++ b/src/telemetrum-v3.0/ao_telemetrum.c @@ -0,0 +1,94 @@ +/* + * Copyright © 2016 Keith Packard <keithp@keithp.com> + * + * 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; 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 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ + +#include <ao.h> +#include <ao_ms5607.h> +#include <ao_mma655x.h> +#include <ao_log.h> +#include <ao_exti.h> +#include <ao_packet.h> +#include <ao_companion.h> +#include <ao_eeprom.h> +#include <ao_profile.h> +#if HAS_SAMPLE_PROFILE +#include <ao_sample_profile.h> +#endif +#if HAS_STACK_GUARD +#include <ao_mpu.h> +#endif + +int +main(void) +{ +	ao_clock_init(); + +#if HAS_STACK_GUARD +	ao_mpu_init(); +#endif + +	ao_task_init(); +	ao_serial_init(); +	ao_led_init(LEDS_AVAILABLE); +	ao_led_on(AO_LED_RED); +	ao_timer_init(); + +	ao_spi_init(); +	ao_dma_init(); +	ao_exti_init(); + +	ao_adc_init(); +#if HAS_BEEP +	ao_beep_init(); +#endif +	ao_cmd_init(); + +#if HAS_MS5607 +	ao_ms5607_init(); +#endif +#if HAS_MMA655X +	ao_mma655x_init(); +#endif + +	ao_eeprom_init(); + +	ao_storage_init(); + +	ao_flight_init(); +	ao_log_init(); +	ao_report_init(); + +	ao_usb_init(); +	ao_gps_init(); +	ao_gps_report_metrum_init(); +	ao_telemetry_init(); +	ao_radio_init(); +	ao_packet_slave_init(FALSE); +	ao_igniter_init(); +	ao_companion_init(); + +	ao_config_init(); +#if AO_PROFILE +	ao_profile_init(); +#endif +#if HAS_SAMPLE_PROFILE +	ao_sample_profile_init(); +#endif + +	ao_start_scheduler(); +	return 0; +} diff --git a/src/telemetrum-v3.0/flash-loader/Makefile b/src/telemetrum-v3.0/flash-loader/Makefile new file mode 100644 index 00000000..5f26541a --- /dev/null +++ b/src/telemetrum-v3.0/flash-loader/Makefile @@ -0,0 +1,8 @@ +# +# AltOS flash loader build +# +# + +TOPDIR=../.. +HARDWARE=telemetrum-v3.0 +include $(TOPDIR)/stm/Makefile-flash.defs diff --git a/src/telemetrum-v3.0/flash-loader/ao_pins.h b/src/telemetrum-v3.0/flash-loader/ao_pins.h new file mode 100644 index 00000000..936354ed --- /dev/null +++ b/src/telemetrum-v3.0/flash-loader/ao_pins.h @@ -0,0 +1,35 @@ +/* + * Copyright © 2013 Keith Packard <keithp@keithp.com> + * + * 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; 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 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ + +#ifndef _AO_PINS_H_ +#define _AO_PINS_H_ + +/* External crystal at 8MHz */ +#define AO_HSE		8000000 + +#include <ao_flash_stm_pins.h> + +/* Companion port cs_companion0 PB6 */ + +#define AO_BOOT_PIN			1 +#define AO_BOOT_APPLICATION_GPIO	stm_gpiob +#define AO_BOOT_APPLICATION_PIN		6 +#define AO_BOOT_APPLICATION_VALUE	1 +#define AO_BOOT_APPLICATION_MODE	AO_EXTI_MODE_PULL_UP + +#endif /* _AO_PINS_H_ */ diff --git a/src/telemini-v2.0/ao_pins.h b/src/telemini-v2.0/ao_pins.h index e75adc07..4f1d36df 100644 --- a/src/telemini-v2.0/ao_pins.h +++ b/src/telemini-v2.0/ao_pins.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 diff --git a/src/telemini-v2.0/ao_telemini.c b/src/telemini-v2.0/ao_telemini.c index 0d8dd1cb..68bc3dfe 100644 --- a/src/telemini-v2.0/ao_telemini.c +++ b/src/telemini-v2.0/ao_telemini.c @@ -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 diff --git a/src/telerepeat-v1.0/ao_pins.h b/src/telerepeat-v1.0/ao_pins.h index 2a7dbd3b..e47d368c 100644 --- a/src/telerepeat-v1.0/ao_pins.h +++ b/src/telerepeat-v1.0/ao_pins.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 diff --git a/src/telerepeat-v1.0/ao_telerepeat.c b/src/telerepeat-v1.0/ao_telerepeat.c index 21bf8a73..43a5ed42 100644 --- a/src/telerepeat-v1.0/ao_telerepeat.c +++ b/src/telerepeat-v1.0/ao_telerepeat.c @@ -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 diff --git a/src/telescience-v0.2/ao_pins.h b/src/telescience-v0.2/ao_pins.h index 03bd59db..c78766cd 100644 --- a/src/telescience-v0.2/ao_pins.h +++ b/src/telescience-v0.2/ao_pins.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 diff --git a/src/telescience-v0.2/ao_telescience.c b/src/telescience-v0.2/ao_telescience.c index 74eef8f4..05bb8653 100644 --- a/src/telescience-v0.2/ao_telescience.c +++ b/src/telescience-v0.2/ao_telescience.c @@ -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 diff --git a/src/telescience-v0.2/flash-loader/ao_pins.h b/src/telescience-v0.2/flash-loader/ao_pins.h index 907ff341..8eaf9299 100644 --- a/src/telescience-v0.2/flash-loader/ao_pins.h +++ b/src/telescience-v0.2/flash-loader/ao_pins.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 diff --git a/src/teleshield-v0.1/ao_ardu_serial.c b/src/teleshield-v0.1/ao_ardu_serial.c index e6e19f67..535cc624 100644 --- a/src/teleshield-v0.1/ao_ardu_serial.c +++ b/src/teleshield-v0.1/ao_ardu_serial.c @@ -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 diff --git a/src/teleshield-v0.1/ao_pins.h b/src/teleshield-v0.1/ao_pins.h index 68bb44ee..6baa88c8 100644 --- a/src/teleshield-v0.1/ao_pins.h +++ b/src/teleshield-v0.1/ao_pins.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 diff --git a/src/teleshield-v0.1/ao_teleshield.c b/src/teleshield-v0.1/ao_teleshield.c index d602f646..713c49f9 100644 --- a/src/teleshield-v0.1/ao_teleshield.c +++ b/src/teleshield-v0.1/ao_teleshield.c @@ -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 diff --git a/src/teleterra-v0.1/ao_pins.h b/src/teleterra-v0.1/ao_pins.h index ba7177af..d25a77b7 100644 --- a/src/teleterra-v0.1/ao_pins.h +++ b/src/teleterra-v0.1/ao_pins.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 diff --git a/src/teleterra-v0.2/ao_pins.h b/src/teleterra-v0.2/ao_pins.h index 472af534..8d9f7a2f 100644 --- a/src/teleterra-v0.2/ao_pins.h +++ b/src/teleterra-v0.2/ao_pins.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 diff --git a/src/test/ao_aes_test.c b/src/test/ao_aes_test.c index dcedbfca..4b65df8d 100644 --- a/src/test/ao_aes_test.c +++ b/src/test/ao_aes_test.c @@ -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 diff --git a/src/test/ao_aprs_test.c b/src/test/ao_aprs_test.c index ae505dea..3852668a 100644 --- a/src/test/ao_aprs_test.c +++ b/src/test/ao_aprs_test.c @@ -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 diff --git a/src/test/ao_fat_test.c b/src/test/ao_fat_test.c index d1309024..63be71c6 100644 --- a/src/test/ao_fat_test.c +++ b/src/test/ao_fat_test.c @@ -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 diff --git a/src/test/ao_fec_test.c b/src/test/ao_fec_test.c index 216a4b79..cbced6ae 100644 --- a/src/test/ao_fec_test.c +++ b/src/test/ao_fec_test.c @@ -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 diff --git a/src/test/ao_flight_test.c b/src/test/ao_flight_test.c index f71c3052..bd7f2ff8 100644 --- a/src/test/ao_flight_test.c +++ b/src/test/ao_flight_test.c @@ -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 diff --git a/src/test/ao_gps_test.c b/src/test/ao_gps_test.c index 543bbcc3..7c1ecc15 100644 --- a/src/test/ao_gps_test.c +++ b/src/test/ao_gps_test.c @@ -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 diff --git a/src/test/ao_gps_test_skytraq.c b/src/test/ao_gps_test_skytraq.c index 5eb7118d..61e7905a 100644 --- a/src/test/ao_gps_test_skytraq.c +++ b/src/test/ao_gps_test_skytraq.c @@ -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 diff --git a/src/test/ao_gps_test_ublox.c b/src/test/ao_gps_test_ublox.c index 83efbb4f..05334bbf 100644 --- a/src/test/ao_gps_test_ublox.c +++ b/src/test/ao_gps_test_ublox.c @@ -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 diff --git a/src/test/ao_int64_test.c b/src/test/ao_int64_test.c index 8557a1c7..07538ee0 100644 --- a/src/test/ao_int64_test.c +++ b/src/test/ao_int64_test.c @@ -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 diff --git a/src/test/ao_micropeak_test.c b/src/test/ao_micropeak_test.c index f4af707e..059c2284 100644 --- a/src/test/ao_micropeak_test.c +++ b/src/test/ao_micropeak_test.c @@ -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 diff --git a/src/test/ao_ms5607_convert_test.c b/src/test/ao_ms5607_convert_test.c index 1c571f1c..4876d21e 100644 --- a/src/test/ao_ms5607_convert_test.c +++ b/src/test/ao_ms5607_convert_test.c @@ -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 diff --git a/src/test/ao_quaternion_test.c b/src/test/ao_quaternion_test.c index b630f1d3..ac232deb 100644 --- a/src/test/ao_quaternion_test.c +++ b/src/test/ao_quaternion_test.c @@ -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 diff --git a/src/usbrelay-v0.1/ao_pins.h b/src/usbrelay-v0.1/ao_pins.h index a72f6cc8..20118728 100644 --- a/src/usbrelay-v0.1/ao_pins.h +++ b/src/usbrelay-v0.1/ao_pins.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 diff --git a/src/usbrelay-v0.1/ao_usbrelay.c b/src/usbrelay-v0.1/ao_usbrelay.c index 879094b5..d908f4db 100644 --- a/src/usbrelay-v0.1/ao_usbrelay.c +++ b/src/usbrelay-v0.1/ao_usbrelay.c @@ -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 diff --git a/src/usbrelay-v0.1/flash-loader/ao_pins.h b/src/usbrelay-v0.1/flash-loader/ao_pins.h index a8046009..cb385600 100644 --- a/src/usbrelay-v0.1/flash-loader/ao_pins.h +++ b/src/usbrelay-v0.1/flash-loader/ao_pins.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 diff --git a/src/usbtrng-v2.0/ao_pins.h b/src/usbtrng-v2.0/ao_pins.h index 1997d205..2b23f967 100644 --- a/src/usbtrng-v2.0/ao_pins.h +++ b/src/usbtrng-v2.0/ao_pins.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 diff --git a/src/usbtrng-v2.0/ao_usbtrng.c b/src/usbtrng-v2.0/ao_usbtrng.c index 42713b6e..e34babec 100644 --- a/src/usbtrng-v2.0/ao_usbtrng.c +++ b/src/usbtrng-v2.0/ao_usbtrng.c @@ -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 diff --git a/src/usbtrng-v2.0/flash-loader/ao_pins.h b/src/usbtrng-v2.0/flash-loader/ao_pins.h index 9fa8b715..9e7c2c33 100644 --- a/src/usbtrng-v2.0/flash-loader/ao_pins.h +++ b/src/usbtrng-v2.0/flash-loader/ao_pins.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 diff --git a/src/usbtrng/ao_pins.h b/src/usbtrng/ao_pins.h index 0f2b1ea6..2fd5df33 100644 --- a/src/usbtrng/ao_pins.h +++ b/src/usbtrng/ao_pins.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 diff --git a/src/usbtrng/ao_usbtrng.c b/src/usbtrng/ao_usbtrng.c index 66e12337..cb15a250 100644 --- a/src/usbtrng/ao_usbtrng.c +++ b/src/usbtrng/ao_usbtrng.c @@ -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 diff --git a/src/usbtrng/flash-loader/ao_pins.h b/src/usbtrng/flash-loader/ao_pins.h index a8046009..cb385600 100644 --- a/src/usbtrng/flash-loader/ao_pins.h +++ b/src/usbtrng/flash-loader/ao_pins.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 diff --git a/src/util/make-whiten b/src/util/make-whiten index d68a02af..b7a33609 100644 --- a/src/util/make-whiten +++ b/src/util/make-whiten @@ -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 diff --git a/telegps/TeleGPS.java b/telegps/TeleGPS.java index 2897e06a..66eaaa2b 100644 --- a/telegps/TeleGPS.java +++ b/telegps/TeleGPS.java @@ -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 diff --git a/telegps/TeleGPSConfig.java b/telegps/TeleGPSConfig.java index f8bb1cf1..d24e7471 100644 --- a/telegps/TeleGPSConfig.java +++ b/telegps/TeleGPSConfig.java @@ -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 diff --git a/telegps/TeleGPSConfigUI.java b/telegps/TeleGPSConfigUI.java index fcba6195..dd3965b4 100644 --- a/telegps/TeleGPSConfigUI.java +++ b/telegps/TeleGPSConfigUI.java @@ -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 diff --git a/telegps/TeleGPSDisplayThread.java b/telegps/TeleGPSDisplayThread.java index 0daccc20..a9c80dc0 100644 --- a/telegps/TeleGPSDisplayThread.java +++ b/telegps/TeleGPSDisplayThread.java @@ -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 diff --git a/telegps/TeleGPSGraphUI.java b/telegps/TeleGPSGraphUI.java index 8e2f6627..55ee370e 100644 --- a/telegps/TeleGPSGraphUI.java +++ b/telegps/TeleGPSGraphUI.java @@ -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 or any later version 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 diff --git a/telegps/TeleGPSInfo.java b/telegps/TeleGPSInfo.java index e17bdbaa..f4fa7216 100644 --- a/telegps/TeleGPSInfo.java +++ b/telegps/TeleGPSInfo.java @@ -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 diff --git a/telegps/TeleGPSPreferences.java b/telegps/TeleGPSPreferences.java index 2a5b2b69..61952326 100644 --- a/telegps/TeleGPSPreferences.java +++ b/telegps/TeleGPSPreferences.java @@ -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 diff --git a/telegps/TeleGPSState.java b/telegps/TeleGPSState.java index e01ef47e..9ba0b7a5 100644 --- a/telegps/TeleGPSState.java +++ b/telegps/TeleGPSState.java @@ -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 diff --git a/telegps/TeleGPSStatus.java b/telegps/TeleGPSStatus.java index 765a8ce4..5479f43a 100644 --- a/telegps/TeleGPSStatus.java +++ b/telegps/TeleGPSStatus.java @@ -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 diff --git a/telegps/TeleGPSStatusUpdate.java b/telegps/TeleGPSStatusUpdate.java index 6cd440c5..ac37af31 100644 --- a/telegps/TeleGPSStatusUpdate.java +++ b/telegps/TeleGPSStatusUpdate.java @@ -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 | 
