Nuke maemo (nokian800/nokian900) and [open]pandora targets

They haven't seen any work since 2013, and likely hasn't compiled in at
least a couple of releases -- not that we ever "released" anything for
these targets.

Futhermore, upstream for both has been effectively dead for about as
long, and there's been no user reports of these being used since 2017
(and even then only in passing).

It isn't worth the effort to triage their current state, much less
uplift into something supportable, while the maintenance burden of
keeping these things in-tree can be demonstrated by the diffstat.

Change-Id: Id93bd450679d1b75e2c74295b3ae1548cd241b24
This commit is contained in:
Solomon Peachy 2025-12-01 22:37:22 -05:00
parent c47c075bd3
commit bbcf210c94
36 changed files with 18 additions and 1728 deletions

View file

@ -37,9 +37,6 @@ int key_to_button(int keyboard_key)
int new_btn = BUTTON_NONE;
switch (keyboard_key)
{
#if (CONFIG_PLATFORM & PLATFORM_MAEMO4)
case SDLK_ESCAPE:
#endif
case SDLK_KP_7:
new_btn = BUTTON_TOPLEFT;
break;
@ -47,36 +44,20 @@ int key_to_button(int keyboard_key)
case SDLK_UP:
new_btn = BUTTON_TOPMIDDLE;
break;
#if (CONFIG_PLATFORM & PLATFORM_MAEMO4)
case SDLK_F7:
#endif
case SDLK_KP_9:
new_btn = BUTTON_TOPRIGHT;
break;
#if (CONFIG_PLATFORM & PLATFORM_PANDORA)
case SDLK_RSHIFT:
#endif
case SDLK_KP_4:
case SDLK_LEFT:
new_btn = BUTTON_MIDLEFT;
break;
#if (CONFIG_PLATFORM & PLATFORM_MAEMO|PLATFORM_PANDORA)
case SDLK_RETURN:
case SDLK_KP_ENTER:
#endif
case SDLK_KP_5:
new_btn = BUTTON_CENTER;
break;
#if (CONFIG_PLATFORM & PLATFORM_PANDORA)
case SDLK_RCTRL:
#endif
case SDLK_KP_6:
case SDLK_RIGHT:
new_btn = BUTTON_MIDRIGHT;
break;
#if (CONFIG_PLATFORM & PLATFORM_MAEMO4)
case SDLK_F6:
#endif
case SDLK_KP_1:
new_btn = BUTTON_BOTTOMLEFT;
break;
@ -84,9 +65,6 @@ int key_to_button(int keyboard_key)
case SDLK_DOWN:
new_btn = BUTTON_BOTTOMMIDDLE;
break;
#if (CONFIG_PLATFORM & PLATFORM_MAEMO4)
case SDLK_F8:
#endif
case SDLK_KP_3:
new_btn = BUTTON_BOTTOMRIGHT;
break;

View file

@ -81,10 +81,6 @@ SDL_Cursor *sdl_arrow_cursor = NULL;
int sdl_app_has_input_focus = 1;
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
static int n900_updown_key_pressed = 0;
#endif
#ifdef HAS_BUTTON_HOLD
bool hold_button_state = false;
bool button_hold(void) {
@ -288,28 +284,6 @@ static bool event_handler(SDL_Event *event)
case SDL_KEYDOWN:
case SDL_KEYUP:
ev_key = event->key.keysym.sym;
#if (CONFIG_PLATFORM & PLATFORM_MAEMO5)
/* N900 with shared up/down cursor mapping. Seen on the German,
Finnish, Italian, French and Russian version. Probably more. */
if (event->key.keysym.mod & KMOD_MODE || n900_updown_key_pressed)
{
/* Prevent stuck up/down keys: If you release the ALT key before the cursor key,
rockbox will see a KEYUP event for left/right instead of up/down and
the previously pressed up/down key would stay active. */
if (ev_key == SDLK_LEFT || ev_key == SDLK_RIGHT)
{
if (event->type == SDL_KEYDOWN)
n900_updown_key_pressed = 1;
else
n900_updown_key_pressed = 0;
}
if (ev_key == SDLK_LEFT)
ev_key = SDLK_UP;
else if (ev_key == SDLK_RIGHT)
ev_key = SDLK_DOWN;
}
#endif
button_event(ev_key, event->type == SDL_KEYDOWN);
break;
@ -463,9 +437,6 @@ static void show_sim_help(void)
#ifdef HAVE_HOTSWAP
HELPTXT(EXT_KEY, "toggle external drive");
#endif
#if (CONFIG_PLATFORM & PLATFORM_PANDORA)
HELPTXT(SDLK_LCTRL, "shutdown");
#endif
#ifdef HAS_BUTTON_HOLD
HELPTXT(SDLK_h, "toggle hold button");
#endif
@ -586,12 +557,6 @@ static void button_event(int key, bool pressed)
return;
#endif
#endif
#if (CONFIG_PLATFORM & PLATFORM_PANDORA)
case SDLK_LCTRL:
/* Will post SDL_USEREVENT in shutdown_hw() if successful. */
sys_poweroff();
break;
#endif
#ifdef RG_NANO
case SDLK_q:
/* Use reboot to exit without shutting down */

View file

@ -25,9 +25,6 @@
#include "button-sdl.h"
#include "lcd-sdl.h"
#include "screendump.h"
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
#include "maemo-thread.h"
#endif
SDL_Surface* lcd_surface;
@ -125,16 +122,6 @@ void lcd_update(void)
void lcd_update_rect(int x_start, int y_start, int width, int height)
{
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
/* Don't update display if not shown */
if (!maemo_display_on)
return;
/* Don't update if we don't have the input focus */
if (!sdl_app_has_input_focus)
return;
#endif
sdl_update_rect(lcd_surface, x_start, y_start, width, height,
LCD_WIDTH, LCD_HEIGHT, get_lcd_pixel);
sdl_gui_update(lcd_surface, x_start, y_start, width,

View file

@ -151,15 +151,7 @@ void sdl_set_gradient(SDL_Surface *surface, SDL_Color *start, SDL_Color *end,
int lcd_get_dpi(void)
{
#if (CONFIG_PLATFORM & PLATFORM_MAEMO5)
return 267;
#elif (CONFIG_PLATFORM & PLATFORM_MAEMO4)
return 225;
#elif (CONFIG_PLATFORM & PLATFORM_PANDORA)
return 217;
#else
/* TODO: find a way to query it from the OS, SDL doesn't support it
* directly; for now assume the more or less standard 96 */
return 96;
#endif
}

View file

@ -44,12 +44,6 @@
#include "panic.h"
#include "debug.h"
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
#include <glib.h>
#include <glib-object.h>
#include "maemo-thread.h"
#endif
#if defined(RG_NANO) && !defined(SIMULATOR)
#include <signal.h>
#include "instant_play.h"
@ -116,14 +110,6 @@ static int sdl_event_thread(void * param)
#endif /* !HAVE_TOUCHSCREEN */
#endif /* !SIMULATOR */
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
/* start maemo thread: Listen to display on/off events and battery monitoring */
SDL_sem *wait_for_maemo_startup = SDL_CreateSemaphore(0); /* 0-count so it blocks */
SDL_Thread *maemo_thread = SDL_CreateThread(maemo_thread_func, NULL, wait_for_maemo_startup);
SDL_SemWait(wait_for_maemo_startup);
SDL_DestroySemaphore(wait_for_maemo_startup);
#endif
#if SDL_MAJOR_VERSION == 1
SDL_InitSubSystem(SDL_INIT_VIDEO);
@ -151,19 +137,6 @@ static int sdl_event_thread(void * param)
/* finally enter the button loop */
gui_message_loop();
#if (CONFIG_PLATFORM & PLATFORM_MAEMO5)
pcm_shutdown_gstreamer();
#endif
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
g_main_loop_quit (maemo_main_loop);
g_main_loop_unref(maemo_main_loop);
SDL_WaitThread(maemo_thread, NULL);
#endif
#if (CONFIG_PLATFORM & (PLATFORM_MAEMO|PLATFORM_PANDORA))
SDL_FreeCursor(hiddenCursor);
#endif
/* Order here is relevent to prevent deadlocks and use of destroyed
sync primitives by kernel threads */
#ifdef HAVE_SDL_THREADS
@ -246,12 +219,6 @@ void system_init(void)
/* fake stack, OS manages size (and growth) */
stackbegin = stackend = (uintptr_t*)&s;
#if (CONFIG_PLATFORM & PLATFORM_MAEMO)
/* Make glib thread safe */
g_thread_init(NULL);
g_type_init();
#endif
#if defined(RG_NANO) && !defined(SIMULATOR)
/* Set system volume to max with amixer */
system("amixer -q sset 'Headphone' 63 unmute");

View file

@ -212,8 +212,8 @@ void sdl_window_setup(void)
int depth = LCD_DEPTH < 8 ? 16 : LCD_DEPTH;
Uint32 flags = SDL_WINDOW_ALLOW_HIGHDPI;
#if (CONFIG_PLATFORM & (PLATFORM_MAEMO|PLATFORM_PANDORA))
/* Fullscreen mode for maemo app */
#if 0
/* Fullscreen mode might be desired */
flags |= SDL_WINDOW_FULLSCREEN;
#else
if (display_zoom == 1)