diff options
Diffstat (limited to 'bootloader/main.c')
-rw-r--r-- | bootloader/main.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/bootloader/main.c b/bootloader/main.c index 930a67c693..1b6ccc7aeb 100644 --- a/bootloader/main.c +++ b/bootloader/main.c | |||
@@ -370,7 +370,8 @@ void main(void) | |||
370 | bool rec_button = false; | 370 | bool rec_button = false; |
371 | bool hold_status = false; | 371 | bool hold_status = false; |
372 | int data; | 372 | int data; |
373 | extern int line; | 373 | extern int line; /* From common.c */ |
374 | extern int remote_line; /* From common.c */ | ||
374 | 375 | ||
375 | /* We want to read the buttons as early as possible, before the user | 376 | /* We want to read the buttons as early as possible, before the user |
376 | releases the ON button */ | 377 | releases the ON button */ |
@@ -511,6 +512,11 @@ void main(void) | |||
511 | lcd_putsxy((LCD_WIDTH-w)/2, (LCD_HEIGHT-h)/2, msg); | 512 | lcd_putsxy((LCD_WIDTH-w)/2, (LCD_HEIGHT-h)/2, msg); |
512 | lcd_update(); | 513 | lcd_update(); |
513 | 514 | ||
515 | #ifdef HAVE_REMOTE_LCD | ||
516 | lcd_remote_puts(0, 3, msg); | ||
517 | lcd_remote_update(); | ||
518 | #endif | ||
519 | |||
514 | #ifdef HAVE_EEPROM_SETTINGS | 520 | #ifdef HAVE_EEPROM_SETTINGS |
515 | if (firmware_settings.initialized) | 521 | if (firmware_settings.initialized) |
516 | { | 522 | { |
@@ -527,6 +533,7 @@ void main(void) | |||
527 | { | 533 | { |
528 | /* Print the battery status. */ | 534 | /* Print the battery status. */ |
529 | line = 0; | 535 | line = 0; |
536 | remote_line = 0; | ||
530 | check_battery(); | 537 | check_battery(); |
531 | 538 | ||
532 | ata_spin(); /* Prevent the drive from spinning down */ | 539 | ata_spin(); /* Prevent the drive from spinning down */ |
@@ -566,7 +573,8 @@ void main(void) | |||
566 | 573 | ||
567 | printf("Loading firmware"); | 574 | printf("Loading firmware"); |
568 | i = load_firmware((unsigned char *)DRAM_START, BOOTFILE, MAX_LOADSIZE); | 575 | i = load_firmware((unsigned char *)DRAM_START, BOOTFILE, MAX_LOADSIZE); |
569 | printf("Result: %d", strerror(i)); | 576 | if(i < 0) |
577 | printf("Error: %d", strerror(i)); | ||
570 | 578 | ||
571 | if (i == EOK) | 579 | if (i == EOK) |
572 | start_firmware(); | 580 | start_firmware(); |
@@ -577,8 +585,10 @@ void main(void) | |||
577 | sleep(HZ*2); | 585 | sleep(HZ*2); |
578 | shutdown(); | 586 | shutdown(); |
579 | } | 587 | } |
580 | else | 588 | else { |
589 | sleep(HZ*2); | ||
581 | start_iriver_fw(); | 590 | start_iriver_fw(); |
591 | } | ||
582 | } | 592 | } |
583 | 593 | ||
584 | /* These functions are present in the firmware library, but we reimplement | 594 | /* These functions are present in the firmware library, but we reimplement |