Advertising
- linuxstb
- Monday, March 5th, 2007 at 4:23:19pm MST
- Index: bootloader/common.c
- ===================================================================
- --- bootloader/common.c (revision 12629)
- +++ bootloader/common.c (working copy)
- @@ -22,9 +22,18 @@
- #include "system.h"
- #include <stdarg.h>
- #include <stdio.h>
- +#include <stdbool.h>
- #include "cpu.h"
- #include "common.h"
- +/* TODO: Other bootloaders need to be adjusted to set this variable to true
- + on a button press - currently only the ipod version does. */
- +#ifdef IPOD_ARCH
- +bool verbose = false;
- +#else
- +bool verbose = true;
- +#endif
- +
- int line = 0;
- #ifdef HAVE_REMOTE_LCD
- int remote_line = 0;
- @@ -54,12 +63,14 @@
- va_end(ap);
- lcd_puts(0, line++, ptr);
- - lcd_update();
- + if (verbose)
- + lcd_update();
- if(line >= LCD_HEIGHT/SYSFONT_HEIGHT)
- line = 0;
- #ifdef HAVE_REMOTE_LCD
- lcd_remote_puts(0, remote_line++, ptr);
- - lcd_remote_update();
- + if (verbose)
- + lcd_remote_update();
- if(remote_line >= LCD_REMOTE_HEIGHT/SYSFONT_HEIGHT)
- remote_line = 0;
- #endif
- Index: bootloader/ipod.c
- ===================================================================
- --- bootloader/ipod.c (revision 12629)
- +++ bootloader/ipod.c (working copy)
- @@ -223,6 +223,7 @@
- {
- char buf[256];
- int i;
- + int btn;
- int rc;
- bool haveretailos;
- bool button_was_held;
- @@ -278,7 +279,12 @@
- button_init();
- #endif
- + btn=key_pressed();
- + /* Enable bootloader messages */
- + if (btn==BUTTON_RIGHT)
- + verbose = true;
- +
- lcd_setfont(FONT_SYSFIXED);
- printf("Rockbox boot loader");
- @@ -314,10 +320,7 @@
- pinfo->type, pinfo->size / 2048);
- - /* Check for a keypress */
- - i=key_pressed();
- -
- - if (button_was_held || (i==BUTTON_MENU)) {
- + if (button_was_held || (btn==BUTTON_MENU)) {
- /* If either the hold switch was on, or the Menu button was held, then
- try the Apple firmware */
- @@ -349,7 +352,7 @@
- /* Everything failed - just loop forever */
- printf("No RetailOS detected");
- - } else if (i==BUTTON_PLAY) {
- + } else if (btn==BUTTON_PLAY) {
- printf("Loading Linux...");
- rc=load_raw_firmware(loadbuffer, "/linux.bin", MAX_LOADSIZE);
- if (rc < EOK) {
- Index: bootloader/common.h
- ===================================================================
- --- bootloader/common.h (revision 12629)
- +++ bootloader/common.h (working copy)
- @@ -26,6 +26,9 @@
- #define EBAD_CHKSUM -5
- #define EFILE_TOO_BIG -6
- +/* Set this to true to enable lcd_update() in the printf function */
- +extern bool verbose;
- +
- /* Functions common to all bootloaders */
- void reset_screen(void);
- void printf(const char *format, ...);
advertising
Update the Post
Either update this post and resubmit it with changes, or make a new post.
You may also comment on this post.
Please note that information posted here will expire by default in one month. If you do not want it to expire, please set the expiry time above. If it is set to expire, web search engines will not be allowed to index it prior to it expiring. Items that are not marked to expire will be indexable by search engines. Be careful with your passwords. All illegal activities will be reported and any information will be handed over to the authorities, so be good.