diff --git a/bootloader/e200.c b/bootloader/e200.c index 639c564ca9..91217f5c70 100644 --- a/bootloader/e200.c +++ b/bootloader/e200.c @@ -38,13 +38,29 @@ void main(void) { + volatile unsigned int* ptr; int i; - - volatile unsigned short *ptr = (unsigned short *)0x14700000; - for(i=0; i< 10000; i++) - *ptr++=i; - while(1); + while(1) + { + // blink wheel backlight + ptr = (volatile unsigned int*)0x70000020; + if((*ptr) & (1 << 13)) + { + *ptr = (*ptr) & ~(1 << 13); + + } + else + { + *ptr = (*ptr) | (1 << 13); + } + + // wait a while + for(i = 0; i < 0xfffff; i++) + { + } + + } } /* These functions are present in the firmware library, but we reimplement diff --git a/firmware/boot.lds b/firmware/boot.lds index f361e45e9e..97a9f784c0 100644 --- a/firmware/boot.lds +++ b/firmware/boot.lds @@ -7,15 +7,10 @@ INPUT(target/coldfire/crt0.o) #elif defined (CPU_ARM) OUTPUT_FORMAT(elf32-littlearm) OUTPUT_ARCH(arm) -#ifndef IPOD_ARCH -/* the ipods can't have the crt0.o mentioned here, but the others can't do - without it! */ -#ifdef CPU_PP -INPUT(target/arm/crt0-pp.o) -#else +#ifndef CPU_PP +/* PortalPlayer-based machines won't work if crt0 is included */ INPUT(target/arm/crt0.o) #endif -#endif #else OUTPUT_FORMAT(elf32-sh) INPUT(target/sh/crt0.o)