Sansa View: replace real bootloader with a simple test code.

After placing the firmware.mi4 file in the root dir of the player in UMS mode of
the OF, Sansa should do stupid blinking with the backlight and buttonlight
alternately. Recovering from this state is possible through the recovery mode
(see Wiki), by putting an original copy of the firmware.mi4.

Change-Id: Ia913442b97e8c405f55c4676b9a2bf0b1b1d05d6
This commit is contained in:
Szymon Dziok 2014-03-27 23:31:04 +00:00
parent 7b015f8681
commit 0eae33c60a
2 changed files with 67 additions and 0 deletions

View file

@ -21,6 +21,8 @@ main-e200r-installer.c
#elif defined(SANSA_PP_ERASE)
main-ppsansawipe.c
fat32format.c
#elif defined(SANSA_VIEW)
sansaview.c
#else
show_logo.c
main-pp.c

65
bootloader/sansaview.c Normal file
View file

@ -0,0 +1,65 @@
/***************************************************************************
* __________ __ ___.
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
* \/ \/ \/ \/ \/
* $Id$
*
* Copyright (C) 2014 by Szymon Dziok
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
****************************************************************************/
/*
SANSA VIEW: TESTING CODE
*/
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include "config.h"
#include "inttypes.h"
#include "cpu.h"
#include "system.h"
#include "lcd.h"
#include "kernel.h"
#include "thread.h"
#include "storage.h"
#include "fat.h"
#include "disk.h"
#include "font.h"
#include "backlight.h"
#include "backlight-target.h"
#include "button.h"
#include "panic.h"
#include "power.h"
#include "file.h"
#include "common.h"
void main(void)
{
system_init();
kernel_init();
disable_irq();
while(1)
{
_backlight_on();
_buttonlight_off();
sleep(HZ/4);
_backlight_off();
_buttonlight_on();
sleep(HZ/4);
}
}