+#ifdef AO_LCO_DRAG_RACE_BOX
+# define AO_LCO_BOX_DRAG 0 /* Box number to enable drag race mode (old LCO bits) */
+# define AO_LCO_BOX_FIRST AO_LCO_BOX_DRAG
+#else
+# ifdef AO_LCO_HAS_CONTRAST
+# define AO_LCO_CONTRAST -2
+# ifndef AO_LCO_BOX_FIRST
+# define AO_LCO_BOX_FIRST AO_LCO_CONTRAST
+# endif
+# endif
+# ifdef AO_LCO_HAS_BACKLIGHT_UI
+# define AO_LCO_BACKLIGHT -1
+# ifndef AO_LCO_BOX_FIRST
+# define AO_LCO_BOX_FIRST AO_LCO_BACKLIGHT
+# endif
+# endif
+# if AO_LCO_HAS_LCO_INFO
+# define AO_LCO_LCO_INFO 0 /* Box number to show LCO info */
+# ifndef AO_LCO_BOX_FIRST
+# define AO_LCO_BOX_FIRST AO_LCO_LCO_INFO
+# endif
+# else
+# define AO_LCO_LCO_VOLTAGE -1
+# ifndef AO_LCO_BOX_FIRST
+# define AO_LCO_BOX_FIRST AO_LCO_LCO_VOLTAGE
+# endif
+# endif
+# ifndef AO_LCO_BOX_FIRST
+# define AO_LCO_BOX_FIRST 1
+# endif
+#endif
+
+#ifdef AO_LCO_HAS_PAD_INFO
+# define AO_LCO_PAD_INFO 0 /* Pad number to show box info */
+# define AO_LCO_PAD_FIRST AO_LCO_PAD_INFO
+#else
+# define AO_LCO_PAD_VOLTAGE 0 /* Pad number to show box voltage */
+# define AO_LCO_PAD_RSSI -1 /* Pad number to show box RSSI */
+# define AO_LCO_PAD_FIRST AO_LCO_PAD_RSSI
+#endif
+
+static inline bool
+ao_lco_box_pseudo(int16_t box)
+{
+ switch (box) {
+#ifdef AO_LCO_LCO_VOLTAGE
+ case AO_LCO_LCO_VOLTAGE:
+ return true;
+#endif
+#ifdef AO_LCO_DRAG_RACE_BOX
+ case AO_LCO_BOX_DRAG:
+ return true;
+#endif
+#ifdef AO_LCO_CONTRAST
+ case AO_LCO_CONTRAST:
+ return true;
+#endif
+#ifdef AO_LCO_BACKLIGHT
+ case AO_LCO_BACKLIGHT:
+ return true;
+#endif
+#ifdef AO_LCO_LCO_INFO
+ case AO_LCO_LCO_INFO:
+ return true;
+#endif
+ default:
+ return false;
+ }
+}
+
+static inline bool
+ao_lco_pad_pseudo(int8_t pad)
+{
+ switch (pad) {
+#ifdef AO_LCO_PAD_VOLTAGE
+ case AO_LCO_PAD_VOLTAGE:
+ return true;
+#endif
+#ifdef AO_LCO_PAD_RSSI
+ case AO_LCO_PAD_RSSI:
+ return true;
+#endif
+#ifdef AO_LCO_PAD_INFO
+ case AO_LCO_PAD_INFO:
+ return true;
+#endif
+ default:
+ return false;
+ }
+}