+void button_adc(uint16_t adcval);
+unsigned char get_user_param(unsigned char param);
+unsigned char buttons_wait_for_release();
+unsigned char buttons_setup_in_progress();
+pattern_t *buttons_setup_status0_pattern_select();
+pattern_t *buttons_setup_status1_pattern_select();
+
+/* battery.c */
+extern volatile unsigned char battery_critical;
+void battery_adc();
+void init_battery();
+unsigned char battery_gauge();
+
+/* control.c */
+extern pattern_t on_pattern[];
+extern volatile unsigned char braking;
+
+void init_control();
+void brake_on();
+void brake_off();
+void toggle_dim_mode();
+void set_panic_mode();
+pattern_t *pwmled_pattern_select();
+pattern_t *status_led_pattern_select();
+pattern_t *illumination_led_pattern_select();
+pattern_t *laser_pattern_select();
+void pwmled_select_brightness();