summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/debug.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/firmware/debug.c b/firmware/debug.c
index e4ef9c9df4..a7923ac237 100644
--- a/firmware/debug.c
+++ b/firmware/debug.c
@@ -34,6 +34,7 @@ static char debugbuf[200];
34#include "lcd.h" 34#include "lcd.h"
35#include "adc.h" 35#include "adc.h"
36#include "mas.h" 36#include "mas.h"
37#include "power.h"
37 38
38void debug_init(void) 39void debug_init(void)
39{ 40{
@@ -230,6 +231,8 @@ void dbg_ports(void)
230 int button; 231 int button;
231 int battery_voltage; 232 int battery_voltage;
232 int batt_int, batt_frac; 233 int batt_int, batt_frac;
234 bool charge_status = false;
235 bool ide_status = true;
233 236
234 lcd_clear_display(); 237 lcd_clear_display();
235 238
@@ -257,7 +260,8 @@ void dbg_ports(void)
257 batt_int = battery_voltage / 100; 260 batt_int = battery_voltage / 100;
258 batt_frac = battery_voltage % 100; 261 batt_frac = battery_voltage % 100;
259 262
260 snprintf(buf, 32, "Battery: %d.%02dV", batt_int, batt_frac); 263 snprintf(buf, 32, "Batt: %d.%02dV %d%% ", batt_int, batt_frac,
264 battery_level());
261 lcd_puts(0, 6, buf); 265 lcd_puts(0, 6, buf);
262 266
263 snprintf(buf, 32, "ATA: %s, 0x%x", 267 snprintf(buf, 32, "ATA: %s, 0x%x",
@@ -271,16 +275,19 @@ void dbg_ports(void)
271 275
272 switch(button) 276 switch(button)
273 { 277 {
278 case BUTTON_ON:
279 charge_status = charge_status?false:true;
280 charger_enable(charge_status);
281 break;
282
274 case BUTTON_UP: 283 case BUTTON_UP:
275 /* Toggle the IDE power */ 284 ide_status = ide_status?false:true;
276 PADR ^= 0x20; 285 ide_power_enable(ide_status);
277 break; 286 break;
278 287
279 case BUTTON_OFF: 288 case BUTTON_OFF:
280 /* Disable the charger */ 289 charger_enable(false);
281 PBDR |= 0x20; 290 ide_power_enable(true);
282 /* Enable the IDE power */
283 PADR |= 0x20;
284 return; 291 return;
285 } 292 }
286 } 293 }