From 02c9f2045b8fe4e5a445be2293fa0d20b328b91e Mon Sep 17 00:00:00 2001 From: Cameron Cawley Date: Wed, 14 Jan 2026 22:17:28 +0000 Subject: [PATCH] Fix touch screen display IDs on the 3DS --- src/video/n3ds/SDL_n3dsvideo.c | 13 +++++-------- src/video/n3ds/SDL_n3dsvideo.h | 4 ++-- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/video/n3ds/SDL_n3dsvideo.c b/src/video/n3ds/SDL_n3dsvideo.c index 65dbbb6da6..b5a60c7548 100644 --- a/src/video/n3ds/SDL_n3dsvideo.c +++ b/src/video/n3ds/SDL_n3dsvideo.c @@ -31,7 +31,7 @@ #define N3DSVID_DRIVER_NAME "n3ds" -static bool AddN3DSDisplay(gfxScreen_t screen); +static SDL_DisplayID AddN3DSDisplay(gfxScreen_t screen); static bool N3DS_VideoInit(SDL_VideoDevice *_this); static void N3DS_VideoQuit(SDL_VideoDevice *_this); @@ -136,14 +136,14 @@ static bool N3DS_VideoInit(SDL_VideoDevice *_this) return true; } -static bool AddN3DSDisplay(gfxScreen_t screen) +static SDL_DisplayID AddN3DSDisplay(gfxScreen_t screen) { SDL_DisplayMode mode; SDL_DisplayModeData *modedata; SDL_VideoDisplay display; SDL_DisplayData *display_driver_data = SDL_calloc(1, sizeof(SDL_DisplayData)); if (!display_driver_data) { - return false; + return 0; } SDL_zero(mode); @@ -153,7 +153,7 @@ static bool AddN3DSDisplay(gfxScreen_t screen) modedata = SDL_malloc(sizeof(SDL_DisplayModeData)); if (!modedata) { - return false; + return 0; } mode.w = (screen == GFX_TOP) ? GSP_SCREEN_HEIGHT_TOP : GSP_SCREEN_HEIGHT_BOTTOM; @@ -167,10 +167,7 @@ static bool AddN3DSDisplay(gfxScreen_t screen) display.desktop_mode = mode; display.internal = display_driver_data; - if (SDL_AddVideoDisplay(&display, false) == 0) { - return false; - } - return true; + return SDL_AddVideoDisplay(&display, false); } static void N3DS_VideoQuit(SDL_VideoDevice *_this) diff --git a/src/video/n3ds/SDL_n3dsvideo.h b/src/video/n3ds/SDL_n3dsvideo.h index f436e7e4ef..9796278106 100644 --- a/src/video/n3ds/SDL_n3dsvideo.h +++ b/src/video/n3ds/SDL_n3dsvideo.h @@ -29,8 +29,8 @@ struct SDL_VideoData { - int top_display; - int touch_display; + SDL_DisplayID top_display; + SDL_DisplayID touch_display; }; struct SDL_WindowData