From 7b10ef9a7c55764d1b6815fd0871cb51ff0205f9 Mon Sep 17 00:00:00 2001 From: Marcoen Hirschberg Date: Fri, 27 Jun 2008 23:24:34 +0000 Subject: initial Meizu M6SL port (take 2) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17819 a1c6a512-1295-4272-9138-f99709370657 --- bootloader/SOURCES | 2 ++ bootloader/meizu_m6sl.c | 84 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 bootloader/meizu_m6sl.c (limited to 'bootloader') diff --git a/bootloader/SOURCES b/bootloader/SOURCES index 37011dd700..19e40e2fc3 100644 --- a/bootloader/SOURCES +++ b/bootloader/SOURCES @@ -29,4 +29,6 @@ iriver_h300.c mrobe500.c #elif defined(CPU_TCC77X) || defined(CPU_TCC780X) telechips.c +#elif defined(MEIZU_M6SL) +meizu_m6sl.c #endif diff --git a/bootloader/meizu_m6sl.c b/bootloader/meizu_m6sl.c new file mode 100644 index 0000000000..3bafd79e34 --- /dev/null +++ b/bootloader/meizu_m6sl.c @@ -0,0 +1,84 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2006 by Greg White + * + * All files in this archive are subject to the GNU General Public License. + * See the file COPYING in the source tree root for full license agreement. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#include "config.h" + +#include +#include +#include "inttypes.h" +#include "string.h" +#include "cpu.h" +#include "system.h" +#include "lcd.h" +#include "kernel.h" +#include "thread.h" +#include "ata.h" +#include "fat.h" +#include "disk.h" +#include "font.h" +#include "adc.h" +#include "backlight.h" +#include "backlight-target.h" +#include "button.h" +#include "panic.h" +#include "power.h" +#include "file.h" +#include "common.h" +#include "rbunicode.h" +#include "usb.h" + +#include + +char version[] = APPSVERSION; + +void main(void) +{ + //Set backlight pin to output and enable + int oldval = PCON0; + PCON0 = ((oldval & ~(3 << 4)) | (1 << 4)); + PDAT0 |= (1 << 2); + + //Set PLAY to input + oldval = PCON1; + PCON1 = ((oldval & ~(0xf << 16)) | (0 << 16)); + + //Set the piezo pins to output + oldval = PCON5; + PCON5 = ((oldval & ~((0xf << 4) | (0xf << 8))) | ((1 << 0) | (1 << 4))); + PDAT5 &= ~((1 << 1) | (1 << 2)); //should not be needed + + PDAT5 |= (1 << 1); //Toggle piezo + + + //toggle backlight on PLAY + while(true) + { + // Wait for play to be pressed + while(!(PDAT1 & (1 << 4))) + { + } + + PDAT5 ^= (1 << 1); //Toggle piezo + + PDAT0 ^= (1 << 2); //Toggle packlight + + // Wait for play to be released + while(PDAT1 & (1 << 4)) + { + } + } +} + -- cgit v1.2.3