Ideenpark-Logo

This commit is contained in:
Christian Kroll 2012-08-11 12:10:28 +00:00
parent 59daa948d4
commit 96ff16629c
5 changed files with 136 additions and 3 deletions

View File

@ -57,6 +57,10 @@ ifeq ($(ANIMATION_FAIRYDUST),y)
SRC += fairydust.c SRC += fairydust.c
endif endif
ifeq ($(ANIMATION_IDEENPARK),y)
SRC += ideenpark.c
endif
ifneq (,$(filter y,$(ANIMATION_PLASMA) $(ANIMATION_PSYCHEDELIC))) ifneq (,$(filter y,$(ANIMATION_PLASMA) $(ANIMATION_PSYCHEDELIC)))
SRC += fpmath_patterns.c SRC += fpmath_patterns.c
endif endif

View File

@ -54,6 +54,7 @@ comment "Animations"
dep_bool "Amphibian" ANIMATION_AMPHIBIAN $ANIMATION_BMSCROLLER dep_bool "Amphibian" ANIMATION_AMPHIBIAN $ANIMATION_BMSCROLLER
dep_bool "Out of Spec Logo" ANIMATION_LOGO_OOS $ANIMATION_BMSCROLLER dep_bool "Out of Spec Logo" ANIMATION_LOGO_OOS $ANIMATION_BMSCROLLER
dep_bool "Fairydust" ANIMATION_FAIRYDUST $ANIMATION_BMSCROLLER dep_bool "Fairydust" ANIMATION_FAIRYDUST $ANIMATION_BMSCROLLER
dep_bool "Ideenpark" ANIMATION_IDEENPARK $ANIMATION_BMSCROLLER
endmenu endmenu
mainmenu_option next_comment mainmenu_option next_comment

115
animations/ideenpark.c Normal file
View File

@ -0,0 +1,115 @@
#include <stdint.h>
#include <assert.h>
#include "../compat/pgmspace.h"
#include "bitmapscroller.h"
#include "ideenpark.h"
static uint8_t const aIdeenparkBitmap[2][42][6] PROGMEM =
{{{0x00, 0x1f, 0xf0, 0x07, 0xf0, 0x00},
{0x00, 0x0f, 0xf0, 0x07, 0xf8, 0x00},
{0x00, 0x3f, 0xf8, 0x1f, 0xf8, 0x00},
{0x00, 0x1f, 0xf8, 0x0f, 0xfe, 0x00},
{0x00, 0x7f, 0xf8, 0x3f, 0xfc, 0x00},
{0x00, 0x7f, 0xfc, 0x1f, 0xff, 0x00},
{0x00, 0xff, 0xfc, 0x7f, 0xff, 0x00},
{0x00, 0x3f, 0xff, 0x7f, 0xfe, 0x00},
{0x00, 0x7f, 0xfe, 0x7f, 0xfe, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xfc, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xf0, 0x00},
{0x00, 0x07, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00},
{0x00, 0x03, 0xff, 0xff, 0xe0, 0x00},
{0x10, 0x07, 0xff, 0xff, 0xe0, 0x00},
{0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc},
{0x1f, 0xff, 0xff, 0xf3, 0xff, 0xfc},
{0x67, 0x7f, 0xff, 0xc3, 0xff, 0x3c},
{0x64, 0xb3, 0x9e, 0xc0, 0x9f, 0xb7},
{0x61, 0x7f, 0xff, 0x48, 0x7f, 0xd6},
{0xe5, 0xc4, 0x02, 0x0b, 0x24, 0x1f},
{0xe7, 0x6f, 0x71, 0x0b, 0xe5, 0x1e},
{0x67, 0xe0, 0x09, 0x0e, 0x03, 0x8f},
{0x61, 0x5f, 0xb9, 0x8e, 0xe5, 0x24},
{0x1c, 0x73, 0x9f, 0xff, 0x9f, 0xf8},
{0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc},
{0x10, 0x07, 0xff, 0xff, 0xe0, 0x00},
{0x00, 0x03, 0xff, 0xff, 0xe0, 0x00},
{0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00},
{0x00, 0x07, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xf0, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xfc, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x7f, 0xfe, 0x7f, 0xfe, 0x00},
{0x00, 0x3f, 0xff, 0x3f, 0xff, 0x00},
{0x00, 0xff, 0xfc, 0x7f, 0xff, 0x00},
{0x00, 0x7f, 0xfc, 0x1f, 0xff, 0x00},
{0x00, 0x7f, 0xf8, 0x3f, 0xfc, 0x00},
{0x00, 0x1f, 0xf8, 0x0f, 0xfe, 0x00},
{0x00, 0x3f, 0xf8, 0x0f, 0xf8, 0x00},
{0x00, 0x0f, 0xe0, 0x07, 0xf8, 0x00}},
{{0x00, 0x0f, 0xe0, 0x07, 0xf8, 0x00},
{0x00, 0x1f, 0xf0, 0x0f, 0xf8, 0x00},
{0x00, 0x1f, 0xf0, 0x0f, 0xfc, 0x00},
{0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x00},
{0x00, 0x3f, 0xfc, 0x1f, 0xfe, 0x00},
{0x00, 0x7f, 0xfc, 0x3f, 0xfe, 0x00},
{0x00, 0x7f, 0xfe, 0x3f, 0xfe, 0x00},
{0x00, 0x7f, 0xfe, 0x7f, 0xfe, 0x00},
{0x00, 0x3f, 0xff, 0xff, 0xfc, 0x00},
{0x00, 0x3f, 0xff, 0xff, 0xfc, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x0f, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x0f, 0xff, 0xff, 0xf0, 0x00},
{0x00, 0x07, 0xff, 0xff, 0xf0, 0x00},
{0x00, 0x07, 0xff, 0xff, 0xe0, 0x00},
{0x0f, 0xff, 0xff, 0xff, 0xff, 0xf8},
{0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8},
{0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc},
{0x2f, 0xbf, 0xff, 0xe1, 0xff, 0xbe},
{0x6f, 0x3f, 0xff, 0xed, 0xff, 0x3e},
{0xec, 0x21, 0x08, 0x6d, 0x88, 0x2f},
{0xe9, 0x29, 0x69, 0x61, 0xc9, 0x8f},
{0x69, 0x80, 0x0b, 0x67, 0x0b, 0x8f},
{0x69, 0x0f, 0x7b, 0x6f, 0x69, 0x26},
{0x2c, 0x21, 0x0b, 0x6f, 0x0b, 0xb6},
{0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc},
{0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8},
{0x0f, 0xff, 0xff, 0xff, 0xff, 0xf8},
{0x00, 0x07, 0xff, 0xff, 0xe0, 0x00},
{0x00, 0x07, 0xff, 0xff, 0xf0, 0x00},
{0x00, 0x0f, 0xff, 0xff, 0xf0, 0x00},
{0x00, 0x0f, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00},
{0x00, 0x3f, 0xff, 0xff, 0xfc, 0x00},
{0x00, 0x3f, 0xff, 0xff, 0xfc, 0x00},
{0x00, 0x7f, 0xfe, 0x7f, 0xfe, 0x00},
{0x00, 0x7f, 0xfe, 0x3f, 0xfe, 0x00},
{0x00, 0x7f, 0xfc, 0x3f, 0xfe, 0x00},
{0x00, 0x3f, 0xfc, 0x1f, 0xfe, 0x00},
{0x00, 0x3f, 0xf8, 0x1f, 0xfc, 0x00},
{0x00, 0x1f, 0xf0, 0x0f, 0xfc, 0x00},
{0x00, 0x1f, 0xf0, 0x0f, 0xf8, 0x00}}};
static uint8_t logo_Ideenpark_getChunk(unsigned char const nBitPlane,
unsigned char const nChunkX,
unsigned char const nChunkY,
unsigned int const nFrame)
{
assert(nBitPlane < 2);
assert(nChunkX < 6);
assert(nChunkY < 42);
return pgm_read_byte(&aIdeenparkBitmap[nBitPlane][nChunkY][nChunkX]);
}
void logo_Ideenpark()
{
// width 48, height 42, 2 bitplanes (4 colors), 600 frames à 50ms (20 fps)
// frame change and viewport movement after every cyle (both dividers are 1)
bitmap_scroll(48, 42, 2, 600, 50, 1, 1, logo_Ideenpark_getChunk);
}

6
animations/ideenpark.h Normal file
View File

@ -0,0 +1,6 @@
#ifndef IDEENPARK_H_
#define IDEENPARK_H_
void logo_Ideenpark();
#endif /* IDEENPARK_H_ */

View File

@ -16,6 +16,7 @@
#include "animations/laborlogo.h" #include "animations/laborlogo.h"
#include "animations/outofspec.h" #include "animations/outofspec.h"
#include "animations/fairydust.h" #include "animations/fairydust.h"
#include "animations/ideenpark.h"
#include "animations/fpmath_patterns.h" #include "animations/fpmath_patterns.h"
#include "animations/mherweg.h" #include "animations/mherweg.h"
#include "animations/blackhole.h" #include "animations/blackhole.h"
@ -215,20 +216,26 @@ void display_loop(){
break; break;
#endif #endif
#ifdef ANIMATION_PLASMA #ifdef ANIMATION_IDEENPARK
case 21: case 21:
logo_Ideenpark();
break;
#endif
#ifdef ANIMATION_PLASMA
case 22:
plasma(); plasma();
break; break;
#endif #endif
#ifdef ANIMATION_PSYCHEDELIC #ifdef ANIMATION_PSYCHEDELIC
case 22: case 23:
psychedelic(); psychedelic();
break; break;
#endif #endif
#ifdef ANIMATION_BLACKHOLE #ifdef ANIMATION_BLACKHOLE
case 23: case 24:
blackhole(); blackhole();
break; break;
#endif #endif