summaryrefslogtreecommitdiff
path: root/apps/debug_menu.c
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2002-07-22 16:39:17 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2002-07-22 16:39:17 +0000
commitc132c486771cd72ef7aea70eeb8876a6481efbc6 (patch)
tree9d2b4a2030231d5d2b6842a0715443cb8395eaa8 /apps/debug_menu.c
parente0d88a11d9e0d8c29fc1cea507f7ebdf1e07bf7a (diff)
downloadrockbox-c132c486771cd72ef7aea70eeb8876a6481efbc6.zip
rockbox-c132c486771cd72ef7aea70eeb8876a6481efbc6.tar.gz
rockbox-c132c486771cd72ef7aea70eeb8876a6481efbc6.tar.bz2
rockbox-c132c486771cd72ef7aea70eeb8876a6481efbc6.tar.xz
Loudness, Superbass and sorting patch by Heikki Hannikainen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1401 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/debug_menu.c')
-rw-r--r--apps/debug_menu.c85
1 files changed, 82 insertions, 3 deletions
diff --git a/apps/debug_menu.c b/apps/debug_menu.c
index 59428f6..19a6225 100644
--- a/apps/debug_menu.c
+++ b/apps/debug_menu.c
@@ -341,18 +341,97 @@ void dbg_rtc(void)
}
#endif
+/* Read MAS registers and display them */
+void dbg_mas(void)
+{
+ char buf[32];
+ unsigned int addr = 0, r, i;
+ int button;
+
+ lcd_clear_display();
+ lcd_puts(0, 0, "MAS register read:");
+
+ while(1)
+ {
+ for (r = 0; r < 4; r++) {
+ i = mas_readreg(addr + r);
+ snprintf(buf, 30, "0x%02x: %08x", addr + r, i);
+ lcd_puts(1, r+1, buf);
+ }
+
+ lcd_update();
+ sleep(HZ/16);
+
+ button = button_get(false);
+
+ switch(button)
+ {
+ case BUTTON_DOWN:
+ addr += 4;
+ break;
+ case BUTTON_UP:
+ if (addr) { addr -= 4; }
+ break;
+ case BUTTON_LEFT:
+ return;
+ }
+ }
+}
+
+#ifdef ARCHOS_RECORDER
+void dbg_mas_codec(void)
+{
+ char buf[32];
+ unsigned int addr = 0, r, i;
+ int button;
+
+ lcd_clear_display();
+ lcd_puts(0, 0, "MAS codec reg read:");
+
+ while(1)
+ {
+ for (r = 0; r < 4; r++) {
+ i = mas_codec_readreg(addr + r);
+ snprintf(buf, 30, "0x%02x: %08x", addr + r, i);
+ lcd_puts(1, r+1, buf);
+ }
+
+ lcd_update();
+ sleep(HZ/16);
+
+ button = button_get(false);
+
+ switch(button)
+ {
+ case BUTTON_DOWN:
+ addr += 4;
+ break;
+ case BUTTON_UP:
+ if (addr) { addr -= 4; }
+ break;
+ case BUTTON_LEFT:
+ return;
+ }
+ }
+}
+#endif
+
void debug_menu(void)
{
int m;
struct menu_items items[] = {
- { "Debug ports", dbg_ports },
+ { "View I/O ports", dbg_ports },
#ifdef HAVE_LCD_BITMAP
#ifdef HAVE_RTC
- { "Debug RTC", dbg_rtc },
+ { "View/clr RTC RAM", dbg_rtc },
#endif /* HAVE_RTC */
#endif /* HAVE_LCD_BITMAP */
- { "Debug OS", dbg_os },
+ { "View OS stacks", dbg_os },
+ { "View MAS regs", dbg_mas },
+#ifdef ARCHOS_RECORDER
+ { "View MAS codec", dbg_mas_codec },
+#endif
};
m=menu_init( items, sizeof items / sizeof(struct menu_items) );