From c0bfdea2c020aa93aaad6516a3c5bd071bd2d2d5 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Tue, 25 Sep 2012 20:51:31 -0700 Subject: NetBSD wscons support by wiz --- src/video/wscons/SDL_wsconsevents.c | 8 ++++++-- src/video/wscons/SDL_wsconsvideo.c | 12 ++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/video/wscons/SDL_wsconsevents.c b/src/video/wscons/SDL_wsconsevents.c index 635b972f0..b7c0d1ec7 100644 --- a/src/video/wscons/SDL_wsconsevents.c +++ b/src/video/wscons/SDL_wsconsevents.c @@ -146,8 +146,11 @@ void WSCONS_InitOSKeymap(_THIS) } switch (private->kbdType) { -#ifdef WSKBD_TYPE_ZAURUS +#if defined(__NetBSD__) || !defined(WSKBD_TYPE_ZAURUS) + default: +#else case WSKBD_TYPE_ZAURUS: +#endif /* top row */ keymap[2] = SDLK_1; keymap[3] = SDLK_2; @@ -220,12 +223,13 @@ void WSCONS_InitOSKeymap(_THIS) keymap[77] = SDLK_RIGHT; keymap[80] = SDLK_DOWN; break; -#endif /* WSKBD_TYPE_ZAURUS */ +#if !defined(__NetBSD__) && defined(WSKBD_TYPE_ZAURUS) default: WSCONS_ReportError("Unable to map keys for keyboard type %u", private->kbdType); break; +#endif } } diff --git a/src/video/wscons/SDL_wsconsvideo.c b/src/video/wscons/SDL_wsconsvideo.c index 0e850d13e..2ef404eda 100644 --- a/src/video/wscons/SDL_wsconsvideo.c +++ b/src/video/wscons/SDL_wsconsvideo.c @@ -141,7 +141,13 @@ VideoBootStrap WSCONS_bootstrap = { WSCONS_CreateDevice }; +#ifdef __NetBSD__ +#define WSCONSDEV_FORMAT "/dev/ttyE%01x" +#endif + +#ifdef __OpenBSD__ #define WSCONSDEV_FORMAT "/dev/ttyC%01x" +#endif int WSCONS_VideoInit(_THIS, SDL_PixelFormat *vformat) { @@ -184,6 +190,11 @@ int WSCONS_VideoInit(_THIS, SDL_PixelFormat *vformat) return -1; } if (private->info.depth > 8) { +#ifdef __NetBSD__ + private->greenMask = 0x00ff00; + private->blueMask = 0x0000ff; + private->redMask = 0xff0000; +#else if (wstype == WSDISPLAY_TYPE_SUN24 || wstype == WSDISPLAY_TYPE_SUNCG12 || wstype == WSDISPLAY_TYPE_SUNCG14 || @@ -202,6 +213,7 @@ int WSCONS_VideoInit(_THIS, SDL_PixelFormat *vformat) WSCONS_ReportError("Unknown video hardware"); return -1; } +#endif } else { WSCONS_ReportError("Displays with 8 bpp or less are not supported"); return -1; -- cgit v1.2.1