Version 1.9.11
[fw/altos] / altoslib / AltosConfigData.java
index 7b78f760cbf43646fd5923f2fbce0aa7a695a0f6..cd649113b1a6b8293b3766f05a74f97ae6f79d0b 100644 (file)
@@ -83,6 +83,9 @@ public class AltosConfigData {
        /* HAS_BEEP */
        public int              beep;
 
+       /* HAS_RADIO_10MW */
+       public int              radio_10mw;
+
        /* Storage info replies */
        public int      storage_size;
        public int      storage_erase_unit;
@@ -223,6 +226,8 @@ public class AltosConfigData {
        }
 
        public boolean has_monitor_battery() {
+               if (product == null)
+                       return false;
                if (product.startsWith("TeleBT"))
                        return true;
                return false;
@@ -313,6 +318,8 @@ public class AltosConfigData {
 
                beep = AltosLib.MISSING;
 
+               radio_10mw = AltosLib.MISSING;
+
                tracker_motion = AltosLib.MISSING;
                tracker_interval = AltosLib.MISSING;
 
@@ -503,6 +510,9 @@ public class AltosConfigData {
                /* HAS_BEEP */
                try { beep = get_int(line, "Beeper setting:"); } catch (Exception e) {}
 
+               /* HAS_RADIO_10MW */
+               try { radio_10mw = get_int(line, "Radio 10mw limit:"); } catch (Exception e) {}
+
                /* HAS_TRACKER */
                try {
                        int[] values = get_values(line, "Tracker setting:");
@@ -728,6 +738,11 @@ public class AltosConfigData {
                /* HAS_BEEP */
                if (beep != AltosLib.MISSING)
                        beep = source.beep();
+
+               /* HAS_RADIO_10MW */
+               if (radio_10mw != AltosLib.MISSING)
+                       radio_10mw = source.radio_10mw();
+
                /* HAS_TRACKER */
                if (tracker_motion != AltosLib.MISSING)
                        tracker_motion = source.tracker_motion();
@@ -783,6 +798,7 @@ public class AltosConfigData {
                dest.set_aprs_format(aprs_format);
                dest.set_aprs_offset(aprs_offset);
                dest.set_beep(beep);
+               dest.set_radio_10mw(radio_10mw);
                dest.set_tracker_motion(tracker_motion);
                dest.set_tracker_interval(tracker_interval);
        }
@@ -902,6 +918,10 @@ public class AltosConfigData {
                if (beep != AltosLib.MISSING)
                        link.printf("c b %d\n", beep);
 
+               /* HAS_RADIO_10MW */
+               if (radio_10mw != AltosLib.MISSING)
+                       link.printf("c p %d\n", radio_10mw);
+
                /* HAS_TRACKER */
                if (tracker_motion != AltosLib.MISSING && tracker_interval != AltosLib.MISSING)
                        link.printf("c t %d %d\n", tracker_motion, tracker_interval);