forked from len0rd/rockbox
Convert plasma to use pluginlib actions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27067 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
1396c335ac
commit
c5f24828c8
2 changed files with 38 additions and 176 deletions
|
@ -26,6 +26,7 @@
|
||||||
|
|
||||||
#include "plugin.h"
|
#include "plugin.h"
|
||||||
#include "lib/helper.h"
|
#include "lib/helper.h"
|
||||||
|
#include "lib/pluginlib_actions.h"
|
||||||
|
|
||||||
#ifdef HAVE_LCD_BITMAP
|
#ifdef HAVE_LCD_BITMAP
|
||||||
|
|
||||||
|
@ -57,143 +58,12 @@ static int plasma_frequency;
|
||||||
static bool boosted = false;
|
static bool boosted = false;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Key assignement, all bitmapped models */
|
static const struct button_mapping* plugin_contexts[]= {
|
||||||
#if (CONFIG_KEYPAD == RECORDER_PAD) || (CONFIG_KEYPAD == ONDIO_PAD)
|
pla_main_ctx,
|
||||||
#define PLASMA_QUIT BUTTON_OFF
|
#if defined(HAVE_REMOTE_LCD)
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
pla_remote_ctx,
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_OFF
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
#define PLASMA_RC_QUIT BUTTON_RC_STOP
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == IPOD_1G2G_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_MENU
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_SCROLL_FWD
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_SCROLL_BACK
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == GIGABEAT_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_C200_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_CLIP_PAD) || \
|
|
||||||
(CONFIG_KEYPAD == SANSA_M200_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == SANSA_FUZE_PAD)
|
|
||||||
#define PLASMA_QUIT (BUTTON_HOME|BUTTON_REPEAT)
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_PLAY
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_SCROLL_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_SCROLL_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_PLAY
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == GIGABEAT_S_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_BACK
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == MROBE100_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IAUDIO_M3_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_RC_REC
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_RC_VOL_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_RC_VOL_DOWN
|
|
||||||
#define PLASMA_RC_QUIT BUTTON_REC
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == COWON_D2_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == IAUDIO67_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_RIGHT
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_LEFT
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_PLAY
|
|
||||||
#define PLASMA_RC_QUIT BUTTON_STOP
|
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
|
|
||||||
#define PLASMA_QUIT BUTTON_BACK
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == PHILIPS_HDD1630_PAD
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_SELECT
|
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == PHILIPS_SA9200_PAD
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_PLAY
|
|
||||||
|
|
||||||
#elif (CONFIG_KEYPAD == ONDAVX747_PAD) || (CONFIG_KEYPAD == ONDAVX777_PAD)
|
|
||||||
#define PLASMA_QUIT BUTTON_POWER
|
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == SAMSUNG_YH_PAD
|
|
||||||
#define PLASMA_QUIT BUTTON_PLAY
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_LEFT
|
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == PBELL_VIBE500_PAD
|
|
||||||
#define PLASMA_QUIT BUTTON_REC
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_PLAY
|
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
|
|
||||||
#define PLASMA_QUIT (BUTTON_REC|BUTTON_PLAY)
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_VOL_DOWN
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_VOL_UP
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_PLAY
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
};
|
||||||
#ifdef HAVE_TOUCHSCREEN
|
|
||||||
#ifndef PLASMA_QUIT
|
|
||||||
#define PLASMA_QUIT BUTTON_TOPLEFT
|
|
||||||
#endif
|
|
||||||
#ifndef PLASMA_INCREASE_FREQUENCY
|
|
||||||
#define PLASMA_INCREASE_FREQUENCY BUTTON_MIDRIGHT
|
|
||||||
#endif
|
|
||||||
#ifndef PLASMA_DECREASE_FREQUENCY
|
|
||||||
#define PLASMA_DECREASE_FREQUENCY BUTTON_MIDLEFT
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_LCD_COLOR
|
|
||||||
#ifndef PLASMA_REGEN_COLORS
|
|
||||||
#define PLASMA_REGEN_COLORS BUTTON_CENTER
|
|
||||||
#endif
|
|
||||||
#endif /* HAVE_LCD_COLOR */
|
|
||||||
#endif /* HAVE_TOUCHSCREEN */
|
|
||||||
|
|
||||||
#define WAV_AMP 90
|
#define WAV_AMP 90
|
||||||
|
|
||||||
|
@ -284,7 +154,7 @@ void cleanup(void *parameter)
|
||||||
int main(void)
|
int main(void)
|
||||||
{
|
{
|
||||||
plasma_frequency = 1;
|
plasma_frequency = 1;
|
||||||
int button, delay, x, y;
|
int action, delay, x, y;
|
||||||
unsigned char p1,p2,p3,p4,t1,t2,t3,t4, z,z0;
|
unsigned char p1,p2,p3,p4,t1,t2,t3,t4, z,z0;
|
||||||
long last_tick = *rb->current_tick;
|
long last_tick = *rb->current_tick;
|
||||||
#ifdef HAVE_ADJUSTABLE_CPU_FREQ
|
#ifdef HAVE_ADJUSTABLE_CPU_FREQ
|
||||||
|
@ -383,25 +253,34 @@ int main(void)
|
||||||
rb->cpu_boost(boosted = false);
|
rb->cpu_boost(boosted = false);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
button = rb->button_get_w_tmo(MAX(0, delay));
|
action = pluginlib_getaction(0, plugin_contexts,
|
||||||
|
ARRAYLEN(plugin_contexts));
|
||||||
last_tick = *rb->current_tick;
|
last_tick = *rb->current_tick;
|
||||||
|
|
||||||
switch(button)
|
switch(action)
|
||||||
{
|
{
|
||||||
#ifdef PLASMA_RC_QUIT
|
case PLA_EXIT:
|
||||||
case PLASMA_RC_QUIT:
|
case PLA_CANCEL:
|
||||||
#endif
|
|
||||||
case(PLASMA_QUIT):
|
|
||||||
cleanup(NULL);
|
cleanup(NULL);
|
||||||
return PLUGIN_OK;
|
return PLUGIN_OK;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case (PLASMA_INCREASE_FREQUENCY):
|
#ifdef HAVE_SCROLLWHEEL
|
||||||
|
case PLA_SCROLL_FWD:
|
||||||
|
case PLA_SCROLL_FWD_REPEAT:
|
||||||
|
#endif
|
||||||
|
case PLA_UP:
|
||||||
|
case PLA_UP_REPEAT:
|
||||||
++plasma_frequency;
|
++plasma_frequency;
|
||||||
wave_table_generate();
|
wave_table_generate();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case (PLASMA_DECREASE_FREQUENCY):
|
#ifdef HAVE_SCROLLWHEEL
|
||||||
|
case PLA_SCROLL_BACK:
|
||||||
|
case PLA_SCROLL_BACK_REPEAT:
|
||||||
|
#endif
|
||||||
|
case PLA_DOWN:
|
||||||
|
case PLA_DOWN_REPEAT:
|
||||||
if(plasma_frequency>1)
|
if(plasma_frequency>1)
|
||||||
{
|
{
|
||||||
--plasma_frequency;
|
--plasma_frequency;
|
||||||
|
@ -409,7 +288,7 @@ int main(void)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#ifdef HAVE_LCD_COLOR
|
#ifdef HAVE_LCD_COLOR
|
||||||
case (PLASMA_REGEN_COLORS):
|
case PLA_SELECT:
|
||||||
redfactor=rb->rand()%4;
|
redfactor=rb->rand()%4;
|
||||||
greenfactor=rb->rand()%4;
|
greenfactor=rb->rand()%4;
|
||||||
bluefactor=rb->rand()%4;
|
bluefactor=rb->rand()%4;
|
||||||
|
@ -420,7 +299,7 @@ int main(void)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if (rb->default_event_handler_ex(button, cleanup, NULL)
|
if (rb->default_event_handler_ex(action, cleanup, NULL)
|
||||||
== SYS_USB_CONNECTED)
|
== SYS_USB_CONNECTED)
|
||||||
return PLUGIN_USB_CONNECTED;
|
return PLUGIN_USB_CONNECTED;
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -4,33 +4,16 @@
|
||||||
Plasma is a demo displaying a 80's style retro plasma effect.
|
Plasma is a demo displaying a 80's style retro plasma effect.
|
||||||
|
|
||||||
\begin{btnmap}
|
\begin{btnmap}
|
||||||
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollFwd\ / \ButtonScrollBack}
|
\PluginUp{} / \PluginDown
|
||||||
\opt{IRIVER_H10_PAD}{\ButtonScrollUp\ / \ButtonScrollDown}
|
\opt{scrollwheel}{/ \PluginScrollFwd{} / \PluginScrollBack}
|
||||||
\opt{COWON_D2_PAD}{\TouchMidLeft{} / \TouchMidRight}
|
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown}
|
||||||
\nopt{IPOD_4G_PAD,IPOD_3G_PAD,IRIVER_H10_PAD,COWON_D2_PAD}
|
& Increase / decrease Frequency\\
|
||||||
{\ButtonUp\ / \ButtonDown}
|
|
||||||
\opt{HAVEREMOTEKEYMAP}{& }
|
\opt{lcd_bitmap}{%
|
||||||
& Adjust frequency\\
|
\PluginSelect
|
||||||
\opt{lcd_color}{
|
& Change Color\\
|
||||||
\opt{IRIVER_H300_PAD,IPOD_4G_PAD,IPOD_3G_PAD,SANSA_E200_PAD%
|
}%
|
||||||
,SANSA_FUZE_PAD,SANSA_C200_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD%
|
|
||||||
,MROBE100_PAD}
|
\PluginCancel{} / \PluginExit
|
||||||
{\ButtonSelect}
|
& Exit\\
|
||||||
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,PBELL_VIBE500_PAD}{\ButtonPlay}
|
|
||||||
\opt{COWON_D2_PAD}{\TouchCenter}
|
|
||||||
\opt{HAVEREMOTEKEYMAP}{& }
|
|
||||||
& Change colours\\
|
|
||||||
}
|
|
||||||
\opt{RECORDER_PAD,ONDIO_PAD,IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
|
|
||||||
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
|
|
||||||
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD%
|
|
||||||
,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD}
|
|
||||||
{\ButtonPower}
|
|
||||||
\opt{SANSA_FUZE_PAD}{Long \ButtonHome}
|
|
||||||
\opt{GIGABEAT_S_PAD}{\ButtonBack}
|
|
||||||
\opt{PBELL_VIBE500_PAD}{\ButtonRec}
|
|
||||||
\opt{HAVEREMOTEKEYMAP}{&
|
|
||||||
\opt{IRIVER_RC_H100_PAD}{\ButtonRCStop}
|
|
||||||
}
|
|
||||||
& Quit\\
|
|
||||||
\end{btnmap}
|
\end{btnmap}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue