diff --git a/apps/SOURCES b/apps/SOURCES index 918fa5d3b9..84f2eecbe2 100644 --- a/apps/SOURCES +++ b/apps/SOURCES @@ -212,4 +212,6 @@ keymaps/keymap-hdd1630.c keymaps/keymap-iaudio67.c #elif CONFIG_KEYPAD == LOGIK_DAX_PAD keymaps/keymap-logikdax.c +#elif CONFIG_KEYPAD == SANSA_FUZE_PAD +keymaps/keymap-fuze.c #endif diff --git a/apps/lang/bulgarian.lang b/apps/lang/bulgarian.lang index 349c382c81..f598563faf 100644 --- a/apps/lang/bulgarian.lang +++ b/apps/lang/bulgarian.lang @@ -10221,17 +10221,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Изключване на осветяването на бутоните" - e200*: "Изключване на осветяването на колелото" + fuze,e200*: "Изключване на осветяването на колелото" *: none button_light: "" - e200*: "" + fuze,e200*: "" diff --git a/apps/lang/catala.lang b/apps/lang/catala.lang index ae60e44e98..f4ccec9408 100644 --- a/apps/lang/catala.lang +++ b/apps/lang/catala.lang @@ -3828,17 +3828,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Apagat de llum de botons" - e200*: "Apagat de llum de roda" + fuze,e200*: "Apagat de llum de roda" *: none button_light: "Apagat de llum de botons" - e200*: "Apagat de llum de roda" + fuze,e200*: "Apagat de llum de roda" diff --git a/apps/lang/chinese-simp.lang b/apps/lang/chinese-simp.lang index eee223ef07..dcaedd8ac0 100644 --- a/apps/lang/chinese-simp.lang +++ b/apps/lang/chinese-simp.lang @@ -10687,17 +10687,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "按键背光自动关闭时滞" - e200*: "转盘背光自动关闭时滞" + fuze,e200*: "转盘背光自动关闭时滞" *: none button_light: "按键背光自动关闭时滞" - e200*: "转盘背光自动关闭时滞" + fuze,e200*: "转盘背光自动关闭时滞" diff --git a/apps/lang/chinese-trad.lang b/apps/lang/chinese-trad.lang index 153f368b6a..3c5b3d9ecc 100644 --- a/apps/lang/chinese-trad.lang +++ b/apps/lang/chinese-trad.lang @@ -10704,15 +10704,15 @@ user: *: none - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none - e200*: "轉盤燈自動關時間" + fuze,e200*: "轉盤燈自動關時間" *: none - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" diff --git a/apps/lang/czech.lang b/apps/lang/czech.lang index c852813a11..db023d44e0 100644 --- a/apps/lang/czech.lang +++ b/apps/lang/czech.lang @@ -3835,15 +3835,15 @@ user: *: none - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none - e200*: "Časový limit osvětlení kolečka" + fuze,e200*: "Časový limit osvětlení kolečka" *: none - e200*: "Časový limit osvětlení kolečka" + fuze,e200*: "Časový limit osvětlení kolečka" diff --git a/apps/lang/dansk.lang b/apps/lang/dansk.lang index bd201da686..c96c6b4046 100644 --- a/apps/lang/dansk.lang +++ b/apps/lang/dansk.lang @@ -9933,17 +9933,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Knap-lys sluk" - e200*: "Hjul-lys sluk" + fuze,e200*: "Hjul-lys sluk" *: none button_light: "Knap-lys sluk" - e200*: "Hjul-lys sluk" + fuze,e200*: "Hjul-lys sluk" diff --git a/apps/lang/deutsch.lang b/apps/lang/deutsch.lang index b05342d4c7..fb3ef520ec 100644 --- a/apps/lang/deutsch.lang +++ b/apps/lang/deutsch.lang @@ -3850,17 +3850,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Tastenbeleuchtungsdauer" - e200*: "Scrollradbeleuchtungsdauer" + fuze,e200*: "Scrollradbeleuchtungsdauer" *: none button_light: "Tastenbeleuchtungsdauer" - e200*: "Scrollradbeleuchtungsdauer" + fuze,e200*: "Scrollradbeleuchtungsdauer" diff --git a/apps/lang/english.lang b/apps/lang/english.lang index 6b8e0850a4..a7b5ef72ed 100644 --- a/apps/lang/english.lang +++ b/apps/lang/english.lang @@ -3924,17 +3924,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" diff --git a/apps/lang/espanol.lang b/apps/lang/espanol.lang index 365c635da2..8afa06239a 100644 --- a/apps/lang/espanol.lang +++ b/apps/lang/espanol.lang @@ -11181,17 +11181,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Tiempo de espera en la luz del botón" - e200*: "Tiempo de espera en la luz de la rueda" + fuze,e200*: "Tiempo de espera en la luz de la rueda" *: none button_light: "Tiempo de espera en la luz del botón" - e200*: "Tiempo de espera en la luz de la rueda" + fuze,e200*: "Tiempo de espera en la luz de la rueda" diff --git a/apps/lang/finnish.lang b/apps/lang/finnish.lang index 267f0d3930..2754970634 100644 --- a/apps/lang/finnish.lang +++ b/apps/lang/finnish.lang @@ -9974,17 +9974,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Painikevalon aikakatkaisu" - e200*: "Rullavalon aikakatkaisu" + fuze,e200*: "Rullavalon aikakatkaisu" *: none button_light: "Painikevalon aikakatkaisu" - e200*: "Rullavalon aikakatkaisu" + fuze,e200*: "Rullavalon aikakatkaisu" diff --git a/apps/lang/francais.lang b/apps/lang/francais.lang index ba6a456817..56d95ce9a4 100644 --- a/apps/lang/francais.lang +++ b/apps/lang/francais.lang @@ -3880,17 +3880,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Durée de l'éclairage des touches" - e200*: "Durée de l'éclairage de la molette" + fuze,e200*: "Durée de l'éclairage de la molette" *: none button_light: "Durée de l'éclairage des touches" - e200*: "Durée de l'éclairage de la molette" + fuze,e200*: "Durée de l'éclairage de la molette" diff --git a/apps/lang/greek.lang b/apps/lang/greek.lang index c5ba1f23e5..032f648f17 100644 --- a/apps/lang/greek.lang +++ b/apps/lang/greek.lang @@ -3838,17 +3838,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Χρόνος σβησίματος πλήκτρων" - e200*: "Χρόνος σβησίματος τροχού" + fuze,e200*: "Χρόνος σβησίματος τροχού" *: none button_light: "Χρόνος σβησίματος πλήκτρων" - e200*: "Χρόνος σβησίματος τροχού" + fuze,e200*: "Χρόνος σβησίματος τροχού" diff --git a/apps/lang/hebrew.lang b/apps/lang/hebrew.lang index b33c081a14..b8e67ad51d 100644 --- a/apps/lang/hebrew.lang +++ b/apps/lang/hebrew.lang @@ -3832,17 +3832,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "זמן תאורת כפתור" - e200*: "זמן תאורת הגלגל" + fuze,e200*: "זמן תאורת הגלגל" *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" diff --git a/apps/lang/italiano.lang b/apps/lang/italiano.lang index 38daa868a7..22e88b263f 100644 --- a/apps/lang/italiano.lang +++ b/apps/lang/italiano.lang @@ -3853,17 +3853,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Tempo di spegnimento illuminazione tasti" - e200*: "Tempo di spegnimento illuminazione rotella" + fuze,e200*: "Tempo di spegnimento illuminazione rotella" *: none button_light: "Tempo di spegnimento illuminazione tasti" - e200*: "Tempo di spegnimento illuminazione rotella" + fuze,e200*: "Tempo di spegnimento illuminazione rotella" diff --git a/apps/lang/japanese.lang b/apps/lang/japanese.lang index 7eee5026db..f190c9bf95 100644 --- a/apps/lang/japanese.lang +++ b/apps/lang/japanese.lang @@ -3834,17 +3834,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "ボタンライトのタイムアウト" - e200*: "ホイールライトのタイムアウト" + fuze,e200*: "ホイールライトのタイムアウト" *: none button_light: "ボタンライトのタイムアウト" - e200*: "ホイールライトのタイムアウト" + fuze,e200*: "ホイールライトのタイムアウト" diff --git a/apps/lang/magyar.lang b/apps/lang/magyar.lang index c381c74510..f652efff67 100644 --- a/apps/lang/magyar.lang +++ b/apps/lang/magyar.lang @@ -3826,18 +3826,18 @@ user: *: none - e200*: "Wheel Light Timeout" - clip,c200,gigabeatf,mrobe100: "Button Light Timeout" + button_light: "Button Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none - e200*: "Kerék világításának hossza" - clip,c200,gigabeatf,mrobe100: "Gomb világításának hossza" + button_light: "Gomb világításának hossza" + fuze,e200*: "Kerék világításának hossza" *: none - e200*: "Wheel Light Timeout" - clip,c200,gigabeatf,mrobe100: "Button Light Timeout" + button_light: "Button Light Timeout" + fuze,e200*: "Wheel Light Timeout" diff --git a/apps/lang/nederlands.lang b/apps/lang/nederlands.lang index 98738c8fe5..faab19376a 100644 --- a/apps/lang/nederlands.lang +++ b/apps/lang/nederlands.lang @@ -10276,17 +10276,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Knoppen Licht Vertraging" - e200*: "Wiel Licht Vertraging" + fuze,e200*: "Wiel Licht Vertraging" *: none button_light: "Knoppen Licht Vertraging" - e200*: "Wiel Licht Vertraging" + fuze,e200*: "Wiel Licht Vertraging" diff --git a/apps/lang/norsk-nynorsk.lang b/apps/lang/norsk-nynorsk.lang index 41bae369fd..bb0add89fd 100644 --- a/apps/lang/norsk-nynorsk.lang +++ b/apps/lang/norsk-nynorsk.lang @@ -9871,17 +9871,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Avbrotstid for knappelys" - e200*: "Avbrotstid for hjullys" + fuze,e200*: "Avbrotstid for hjullys" *: none button_light: "Avbrotstid for knappelys" - e200*: "Avbrotstid for hjullys" + fuze,e200*: "Avbrotstid for hjullys" diff --git a/apps/lang/norsk.lang b/apps/lang/norsk.lang index e4027e6f2f..ee366360fe 100644 --- a/apps/lang/norsk.lang +++ b/apps/lang/norsk.lang @@ -10023,17 +10023,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Slukketid for knapplys" - e200*: "Slukketid for hjullys" + fuze,e200*: "Slukketid for hjullys" *: none button_light: "Tid før lys på knapper slukker" - e200*: "Tid før lys på hjul slukker" + fuze,e200*: "Tid før lys på hjul slukker" diff --git a/apps/lang/polski.lang b/apps/lang/polski.lang index f2e1ae1855..ee426df897 100644 --- a/apps/lang/polski.lang +++ b/apps/lang/polski.lang @@ -3841,17 +3841,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Wygaszanie klawiszy" - e200*: "Wygaszanie koła sterującego" + fuze,e200*: "Wygaszanie koła sterującego" *: none button_light: "Wygaszanie klawiszy" - e200*: "Wygaszanie koła sterującego" + fuze,e200*: "Wygaszanie koła sterującego" diff --git a/apps/lang/portugues-brasileiro.lang b/apps/lang/portugues-brasileiro.lang index c1e256bdb7..82cec23368 100644 --- a/apps/lang/portugues-brasileiro.lang +++ b/apps/lang/portugues-brasileiro.lang @@ -3851,17 +3851,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Duração da Luz do Botão" - e200*: "Duração da Luz da Roda" + fuze,e200*: "Duração da Luz da Roda" *: none button_light: "Duração da Luz do Botão" - e200*: "Duração da Luz da Roda" + fuze,e200*: "Duração da Luz da Roda" diff --git a/apps/lang/romaneste.lang b/apps/lang/romaneste.lang index f0b63543a1..322dc115cb 100644 --- a/apps/lang/romaneste.lang +++ b/apps/lang/romaneste.lang @@ -10303,17 +10303,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Timp iluminare butoane" - e200*: "Timp iluminare rotita" + fuze,e200*: "Timp iluminare rotita" *: none button_light: "Timp iluminare butoane" - e200*: "Timp iluminare rotita" + fuze,e200*: "Timp iluminare rotita" diff --git a/apps/lang/russian.lang b/apps/lang/russian.lang index 5f2f265b7b..e489503d17 100644 --- a/apps/lang/russian.lang +++ b/apps/lang/russian.lang @@ -10945,17 +10945,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Таймаут подсветки клавиш" - e200*: "Таймаут подсветки колёсика" + fuze,e200*: "Таймаут подсветки колёсика" *: none button_light: "Таймаут подсветки клавиш" - e200*: "Таймаут подсветки колёсика" + fuze,e200*: "Таймаут подсветки колёсика" diff --git a/apps/lang/svenska.lang b/apps/lang/svenska.lang index d779dd9f41..03312ecf3e 100644 --- a/apps/lang/svenska.lang +++ b/apps/lang/svenska.lang @@ -3852,17 +3852,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Knappbelysning" - e200*: "Hjulbelysning" + fuze,e200*: "Hjulbelysning" *: none button_light: "Knappbelysning" - e200*: "Hjulbelysning" + fuze,e200*: "Hjulbelysning" diff --git a/apps/lang/tagalog.lang b/apps/lang/tagalog.lang index 17c85ac68d..103afdf1f5 100644 --- a/apps/lang/tagalog.lang +++ b/apps/lang/tagalog.lang @@ -3841,17 +3841,17 @@ *: none button_light: "Button Light Timeout" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none button_light: "Pahintuin buttones sa ilaw" - e200*: "Pahintuin gulong sa ilaw" + fuze,e200*: "Pahintuin gulong sa ilaw" *: none button_light: "" - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" diff --git a/apps/lang/thai.lang b/apps/lang/thai.lang index 2d13ffa09e..a8d1a6f407 100644 --- a/apps/lang/thai.lang +++ b/apps/lang/thai.lang @@ -3834,15 +3834,15 @@ user: *: none - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" *: none - e200*: "เวลาเปิดไฟล้อหมุน" + fuze,e200*: "เวลาเปิดไฟล้อหมุน" *: none - e200*: "Wheel Light Timeout" + fuze,e200*: "Wheel Light Timeout" diff --git a/firmware/target/arm/as3525/sansa-fuze/backlight-target.h b/firmware/target/arm/as3525/sansa-fuze/backlight-target.h index db2cecc07a..ddaa7f2094 100644 --- a/firmware/target/arm/as3525/sansa-fuze/backlight-target.h +++ b/firmware/target/arm/as3525/sansa-fuze/backlight-target.h @@ -26,7 +26,8 @@ void _backlight_on(void); void _backlight_off(void); void _backlight_set_brightness(int brightness); int __backlight_is_on(void); - +#ifdef HAVE_BUTTON_LIGHT void _buttonlight_on(void); void _buttonlight_off(void); #endif +#endif diff --git a/firmware/target/arm/as3525/sansa-fuze/button-target.h b/firmware/target/arm/as3525/sansa-fuze/button-target.h index c818c602d0..be72e1a35e 100644 --- a/firmware/target/arm/as3525/sansa-fuze/button-target.h +++ b/firmware/target/arm/as3525/sansa-fuze/button-target.h @@ -37,12 +37,12 @@ void button_int(void); /* Sandisk Sansa Fuze button codes */ -/* TODO: These are just a copy of the E200 */ - /* Main unit's buttons */ -#define BUTTON_REC 0x00000001 +#define BUTTON_HOME 0x00000001 + #define BUTTON_DOWN 0x00000002 #define BUTTON_RIGHT 0x00000004 + #define BUTTON_LEFT 0x00000008 #define BUTTON_SELECT 0x00000010 #define BUTTON_UP 0x00000020 @@ -51,7 +51,11 @@ void button_int(void); #define BUTTON_SCROLL_BACK 0x00000080 #define BUTTON_SCROLL_FWD 0x00000100 -#define BUTTON_MAIN 0x00000fff +#define BUTTON_HOLD 0x00000200 + +#define BUTTON_MAIN (BUTTON_HOME|BUTTON_DOWN|BUTTON_RIGHT|BUTTON_LEFT \ + |BUTTON_SELECT|BUTTON_UP|BUTTON_POWER \ + |BUTTON_SCROLLBACK|BUTTON_SCROLL_FWD|BUTTON_HOLD) /* No Remote control */ #define BUTTON_REMOTE 0 diff --git a/tools/configure b/tools/configure index 244a29d84c..42015df145 100755 --- a/tools/configure +++ b/tools/configure @@ -1751,7 +1751,7 @@ fi output="rockbox.sansa" bootoutput="bootloader-fuze.sansa" appextra="recorder:gui" - plugins="yes" + plugins="" swcodec="yes" toolset=$scramblebitmaptools t_cpu="arm" diff --git a/uisimulator/sdl/UI-fuze.bmp b/uisimulator/sdl/UI-fuze.bmp new file mode 100644 index 0000000000..02b07b61ba Binary files /dev/null and b/uisimulator/sdl/UI-fuze.bmp differ diff --git a/uisimulator/sdl/button.c b/uisimulator/sdl/button.c index 840a599aac..614308a070 100644 --- a/uisimulator/sdl/button.c +++ b/uisimulator/sdl/button.c @@ -950,7 +950,43 @@ void button_event(int key, bool pressed) case SDLK_SPACE: new_btn = BUTTON_SELECT; break; - +#elif CONFIG_KEYPAD == SANSA_FUZE_PAD + case SDLK_KP4: + case SDLK_LEFT: + new_btn = BUTTON_LEFT; + break; + case SDLK_KP6: + case SDLK_RIGHT: + new_btn = BUTTON_RIGHT; + break; + case SDLK_KP8: + case SDLK_UP: + new_btn = BUTTON_SCROLL_BACK; + break; + case SDLK_KP2: + case SDLK_DOWN: + new_btn = BUTTON_SCROLL_FWD; + break; + case SDLK_PAGEUP: + case SDLK_KP9: + new_btn = BUTTON_UP; + break; + case SDLK_PAGEDOWN: + case SDLK_KP3: + new_btn = BUTTON_DOWN; + break; + case SDLK_KP_MINUS: + new_btn = BUTTON_POWER; + break; + case SDLK_KP_MULTIPLY: + new_btn = BUTTON_HOME; + break; + case SDLK_KP5: + case SDLK_SPACE: + case SDLK_KP_ENTER: + case SDLK_RETURN: + new_btn = BUTTON_SELECT; + break; #elif CONFIG_KEYPAD == SANSA_CLIP_PAD case SDLK_KP4: case SDLK_LEFT: diff --git a/uisimulator/sdl/uisdl.h b/uisimulator/sdl/uisdl.h index 4332426963..5b0f944d3f 100644 --- a/uisimulator/sdl/uisdl.h +++ b/uisimulator/sdl/uisdl.h @@ -436,6 +436,16 @@ #define UI_LCD_FGCOLOR 0, 0, 0 /* foreground color of LCD (no backlight) */ #define UI_LCD_FGCOLORLIGHT 0, 0, 0 /* foreground color of LCD (backlight) */ +#elif defined(SANSA_FUZE) +#define UI_TITLE "Sansa Fuze" +#define UI_WIDTH 279 /* width of GUI window */ +#define UI_HEIGHT 449 /* height of GUI window */ +/* high-colour */ +#define UI_LCD_POSX 30 /* x position of lcd */ +#define UI_LCD_POSY 31 /* y position of lcd */ +#define UI_LCD_WIDTH LCD_WIDTH +#define UI_LCD_HEIGHT LCD_HEIGHT + #elif defined(SANSA_CLIP) #define UI_TITLE "Sansa Clip" #define UI_WIDTH 205 /* width of GUI window */