mirror of
https://github.com/ZDoom/gzdoom-gles.git
synced 2025-02-25 21:00:46 +00:00
Merged list of video modes for Cocoa and SDL backends
https://forum.zdoom.org/viewtopic.php?t=59990
This commit is contained in:
parent
38156b9243
commit
fdd93d704d
3 changed files with 110 additions and 143 deletions
|
@ -55,6 +55,7 @@
|
||||||
#include "v_text.h"
|
#include "v_text.h"
|
||||||
#include "v_video.h"
|
#include "v_video.h"
|
||||||
#include "version.h"
|
#include "version.h"
|
||||||
|
#include "videomodes.h"
|
||||||
|
|
||||||
#include "gl/system/gl_system.h"
|
#include "gl/system/gl_system.h"
|
||||||
#include "gl/data/gl_vertexbuffer.h"
|
#include "gl/data/gl_vertexbuffer.h"
|
||||||
|
@ -402,80 +403,6 @@ extern id appCtrl;
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
|
|
||||||
const struct
|
|
||||||
{
|
|
||||||
uint16_t width;
|
|
||||||
uint16_t height;
|
|
||||||
}
|
|
||||||
VideoModes[] =
|
|
||||||
{
|
|
||||||
{ 320, 200 },
|
|
||||||
{ 320, 240 },
|
|
||||||
{ 400, 225 }, // 16:9
|
|
||||||
{ 400, 300 },
|
|
||||||
{ 480, 270 }, // 16:9
|
|
||||||
{ 480, 360 },
|
|
||||||
{ 512, 288 }, // 16:9
|
|
||||||
{ 512, 384 },
|
|
||||||
{ 640, 360 }, // 16:9
|
|
||||||
{ 640, 400 },
|
|
||||||
{ 640, 480 },
|
|
||||||
{ 720, 480 }, // 16:10
|
|
||||||
{ 720, 540 },
|
|
||||||
{ 800, 450 }, // 16:9
|
|
||||||
{ 800, 480 },
|
|
||||||
{ 800, 500 }, // 16:10
|
|
||||||
{ 800, 600 },
|
|
||||||
{ 848, 480 }, // 16:9
|
|
||||||
{ 960, 600 }, // 16:10
|
|
||||||
{ 960, 720 },
|
|
||||||
{ 1024, 576 }, // 16:9
|
|
||||||
{ 1024, 600 }, // 17:10
|
|
||||||
{ 1024, 640 }, // 16:10
|
|
||||||
{ 1024, 768 },
|
|
||||||
{ 1088, 612 }, // 16:9
|
|
||||||
{ 1152, 648 }, // 16:9
|
|
||||||
{ 1152, 720 }, // 16:10
|
|
||||||
{ 1152, 864 },
|
|
||||||
{ 1280, 540 }, // 21:9
|
|
||||||
{ 1280, 720 }, // 16:9
|
|
||||||
{ 1280, 854 },
|
|
||||||
{ 1280, 800 }, // 16:10
|
|
||||||
{ 1280, 960 },
|
|
||||||
{ 1280, 1024 }, // 5:4
|
|
||||||
{ 1360, 768 }, // 16:9
|
|
||||||
{ 1366, 768 },
|
|
||||||
{ 1400, 787 }, // 16:9
|
|
||||||
{ 1400, 875 }, // 16:10
|
|
||||||
{ 1400, 1050 },
|
|
||||||
{ 1440, 900 },
|
|
||||||
{ 1440, 960 },
|
|
||||||
{ 1440, 1080 },
|
|
||||||
{ 1600, 900 }, // 16:9
|
|
||||||
{ 1600, 1000 }, // 16:10
|
|
||||||
{ 1600, 1200 },
|
|
||||||
{ 1680, 1050 }, // 16:10
|
|
||||||
{ 1920, 1080 },
|
|
||||||
{ 1920, 1200 },
|
|
||||||
{ 2048, 1152 }, // 16:9, iMac Retina 4K 21.5", HiDPI off
|
|
||||||
{ 2048, 1536 },
|
|
||||||
{ 2304, 1440 }, // 16:10, MacBook Retina 12"
|
|
||||||
{ 2560, 1080 }, // 21:9
|
|
||||||
{ 2560, 1440 },
|
|
||||||
{ 2560, 1600 },
|
|
||||||
{ 2560, 2048 },
|
|
||||||
{ 2880, 1800 }, // 16:10, MacBook Pro Retina 15"
|
|
||||||
{ 3200, 1800 },
|
|
||||||
{ 3440, 1440 }, // 21:9
|
|
||||||
{ 3840, 2160 },
|
|
||||||
{ 3840, 2400 },
|
|
||||||
{ 4096, 2160 },
|
|
||||||
{ 4096, 2304 }, // 16:9, iMac Retina 4K 21.5"
|
|
||||||
{ 5120, 2160 }, // 21:9
|
|
||||||
{ 5120, 2880 } // 16:9, iMac Retina 5K 27"
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
cycle_t BlitCycles;
|
cycle_t BlitCycles;
|
||||||
cycle_t FlipCycles;
|
cycle_t FlipCycles;
|
||||||
|
|
||||||
|
|
|
@ -45,6 +45,7 @@
|
||||||
#include "version.h"
|
#include "version.h"
|
||||||
#include "c_console.h"
|
#include "c_console.h"
|
||||||
|
|
||||||
|
#include "videomodes.h"
|
||||||
#include "sdlglvideo.h"
|
#include "sdlglvideo.h"
|
||||||
#include "sdlvideo.h"
|
#include "sdlvideo.h"
|
||||||
#include "gl/system/gl_system.h"
|
#include "gl/system/gl_system.h"
|
||||||
|
@ -63,11 +64,6 @@
|
||||||
|
|
||||||
// TYPES -------------------------------------------------------------------
|
// TYPES -------------------------------------------------------------------
|
||||||
|
|
||||||
struct MiniModeInfo
|
|
||||||
{
|
|
||||||
uint16_t Width, Height;
|
|
||||||
};
|
|
||||||
|
|
||||||
// PUBLIC FUNCTION PROTOTYPES ----------------------------------------------
|
// PUBLIC FUNCTION PROTOTYPES ----------------------------------------------
|
||||||
|
|
||||||
// PRIVATE FUNCTION PROTOTYPES ---------------------------------------------
|
// PRIVATE FUNCTION PROTOTYPES ---------------------------------------------
|
||||||
|
@ -114,67 +110,6 @@ CUSTOM_CVAR(Bool, gl_es, false, CVAR_ARCHIVE | CVAR_GLOBALCONFIG | CVAR_NOINITCA
|
||||||
|
|
||||||
// PRIVATE DATA DEFINITIONS ------------------------------------------------
|
// PRIVATE DATA DEFINITIONS ------------------------------------------------
|
||||||
|
|
||||||
// Dummy screen sizes to pass when windowed
|
|
||||||
static MiniModeInfo WinModes[] =
|
|
||||||
{
|
|
||||||
{ 320, 200 },
|
|
||||||
{ 320, 240 },
|
|
||||||
{ 400, 225 }, // 16:9
|
|
||||||
{ 400, 300 },
|
|
||||||
{ 480, 270 }, // 16:9
|
|
||||||
{ 480, 360 },
|
|
||||||
{ 512, 288 }, // 16:9
|
|
||||||
{ 512, 384 },
|
|
||||||
{ 640, 360 }, // 16:9
|
|
||||||
{ 640, 400 },
|
|
||||||
{ 640, 480 },
|
|
||||||
{ 720, 480 }, // 16:10
|
|
||||||
{ 720, 540 },
|
|
||||||
{ 800, 450 }, // 16:9
|
|
||||||
{ 800, 480 },
|
|
||||||
{ 800, 500 }, // 16:10
|
|
||||||
{ 800, 600 },
|
|
||||||
{ 848, 480 }, // 16:9
|
|
||||||
{ 960, 600 }, // 16:10
|
|
||||||
{ 960, 720 },
|
|
||||||
{ 1024, 576 }, // 16:9
|
|
||||||
{ 1024, 600 }, // 17:10
|
|
||||||
{ 1024, 640 }, // 16:10
|
|
||||||
{ 1024, 768 },
|
|
||||||
{ 1088, 612 }, // 16:9
|
|
||||||
{ 1152, 648 }, // 16:9
|
|
||||||
{ 1152, 720 }, // 16:10
|
|
||||||
{ 1152, 864 },
|
|
||||||
{ 1280, 720 }, // 16:9
|
|
||||||
{ 1280, 854 },
|
|
||||||
{ 1280, 800 }, // 16:10
|
|
||||||
{ 1280, 960 },
|
|
||||||
{ 1280, 1024 }, // 5:4
|
|
||||||
{ 1360, 768 }, // 16:9
|
|
||||||
{ 1366, 768 },
|
|
||||||
{ 1400, 787 }, // 16:9
|
|
||||||
{ 1400, 875 }, // 16:10
|
|
||||||
{ 1400, 1050 },
|
|
||||||
{ 1440, 900 },
|
|
||||||
{ 1440, 960 },
|
|
||||||
{ 1440, 1080 },
|
|
||||||
{ 1600, 900 }, // 16:9
|
|
||||||
{ 1600, 1000 }, // 16:10
|
|
||||||
{ 1600, 1200 },
|
|
||||||
{ 1920, 1080 },
|
|
||||||
{ 1920, 1200 },
|
|
||||||
{ 2048, 1536 },
|
|
||||||
{ 2560, 1440 },
|
|
||||||
{ 2560, 1600 },
|
|
||||||
{ 2560, 2048 },
|
|
||||||
{ 2880, 1800 },
|
|
||||||
{ 3200, 1800 },
|
|
||||||
{ 3840, 2160 },
|
|
||||||
{ 3840, 2400 },
|
|
||||||
{ 4096, 2160 },
|
|
||||||
{ 5120, 2880 }
|
|
||||||
};
|
|
||||||
|
|
||||||
// CODE --------------------------------------------------------------------
|
// CODE --------------------------------------------------------------------
|
||||||
|
|
||||||
SDLGLVideo::SDLGLVideo (int parm)
|
SDLGLVideo::SDLGLVideo (int parm)
|
||||||
|
@ -202,10 +137,10 @@ bool SDLGLVideo::NextMode (int *width, int *height, bool *letterbox)
|
||||||
if (IteratorBits != 8)
|
if (IteratorBits != 8)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if ((unsigned)IteratorMode < sizeof(WinModes)/sizeof(WinModes[0]))
|
if ((unsigned)IteratorMode < sizeof(VideoModes)/sizeof(VideoModes[0]))
|
||||||
{
|
{
|
||||||
*width = WinModes[IteratorMode].Width;
|
*width = VideoModes[IteratorMode].width;
|
||||||
*height = WinModes[IteratorMode].Height;
|
*height = VideoModes[IteratorMode].height;
|
||||||
++IteratorMode;
|
++IteratorMode;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
105
src/posix/videomodes.h
Normal file
105
src/posix/videomodes.h
Normal file
|
@ -0,0 +1,105 @@
|
||||||
|
/*
|
||||||
|
** videomodes.h
|
||||||
|
**
|
||||||
|
**---------------------------------------------------------------------------
|
||||||
|
** Copyright 2018 Alexey Lysiuk
|
||||||
|
** All rights reserved.
|
||||||
|
**
|
||||||
|
** Redistribution and use in source and binary forms, with or without
|
||||||
|
** modification, are permitted provided that the following conditions
|
||||||
|
** are met:
|
||||||
|
**
|
||||||
|
** 1. Redistributions of source code must retain the above copyright
|
||||||
|
** notice, this list of conditions and the following disclaimer.
|
||||||
|
** 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
** notice, this list of conditions and the following disclaimer in the
|
||||||
|
** documentation and/or other materials provided with the distribution.
|
||||||
|
** 3. The name of the author may not be used to endorse or promote products
|
||||||
|
** derived from this software without specific prior written permission.
|
||||||
|
**
|
||||||
|
** THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
** IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
** OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
** IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
** NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
** THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
**---------------------------------------------------------------------------
|
||||||
|
**
|
||||||
|
*/
|
||||||
|
|
||||||
|
static const struct
|
||||||
|
{
|
||||||
|
uint16_t width;
|
||||||
|
uint16_t height;
|
||||||
|
}
|
||||||
|
VideoModes[] =
|
||||||
|
{
|
||||||
|
{ 320, 200 },
|
||||||
|
{ 320, 240 },
|
||||||
|
{ 400, 225 }, // 16:9
|
||||||
|
{ 400, 300 },
|
||||||
|
{ 480, 270 }, // 16:9
|
||||||
|
{ 480, 360 },
|
||||||
|
{ 512, 288 }, // 16:9
|
||||||
|
{ 512, 384 },
|
||||||
|
{ 640, 360 }, // 16:9
|
||||||
|
{ 640, 400 },
|
||||||
|
{ 640, 480 },
|
||||||
|
{ 720, 480 }, // 16:10
|
||||||
|
{ 720, 540 },
|
||||||
|
{ 800, 450 }, // 16:9
|
||||||
|
{ 800, 480 },
|
||||||
|
{ 800, 500 }, // 16:10
|
||||||
|
{ 800, 600 },
|
||||||
|
{ 848, 480 }, // 16:9
|
||||||
|
{ 960, 600 }, // 16:10
|
||||||
|
{ 960, 720 },
|
||||||
|
{ 1024, 576 }, // 16:9
|
||||||
|
{ 1024, 600 }, // 17:10
|
||||||
|
{ 1024, 640 }, // 16:10
|
||||||
|
{ 1024, 768 },
|
||||||
|
{ 1088, 612 }, // 16:9
|
||||||
|
{ 1152, 648 }, // 16:9
|
||||||
|
{ 1152, 720 }, // 16:10
|
||||||
|
{ 1152, 864 },
|
||||||
|
{ 1280, 540 }, // 21:9
|
||||||
|
{ 1280, 720 }, // 16:9
|
||||||
|
{ 1280, 854 },
|
||||||
|
{ 1280, 800 }, // 16:10
|
||||||
|
{ 1280, 960 },
|
||||||
|
{ 1280, 1024 }, // 5:4
|
||||||
|
{ 1360, 768 }, // 16:9
|
||||||
|
{ 1366, 768 },
|
||||||
|
{ 1400, 787 }, // 16:9
|
||||||
|
{ 1400, 875 }, // 16:10
|
||||||
|
{ 1400, 1050 },
|
||||||
|
{ 1440, 900 },
|
||||||
|
{ 1440, 960 },
|
||||||
|
{ 1440, 1080 },
|
||||||
|
{ 1600, 900 }, // 16:9
|
||||||
|
{ 1600, 1000 }, // 16:10
|
||||||
|
{ 1600, 1200 },
|
||||||
|
{ 1680, 1050 }, // 16:10
|
||||||
|
{ 1920, 1080 },
|
||||||
|
{ 1920, 1200 },
|
||||||
|
{ 2048, 1152 }, // 16:9, iMac Retina 4K 21.5", HiDPI off
|
||||||
|
{ 2048, 1536 },
|
||||||
|
{ 2304, 1440 }, // 16:10, MacBook Retina 12"
|
||||||
|
{ 2560, 1080 }, // 21:9
|
||||||
|
{ 2560, 1440 },
|
||||||
|
{ 2560, 1600 },
|
||||||
|
{ 2560, 2048 },
|
||||||
|
{ 2880, 1800 }, // 16:10, MacBook Pro Retina 15"
|
||||||
|
{ 3200, 1800 },
|
||||||
|
{ 3440, 1440 }, // 21:9
|
||||||
|
{ 3840, 2160 },
|
||||||
|
{ 3840, 2400 },
|
||||||
|
{ 4096, 2160 },
|
||||||
|
{ 4096, 2304 }, // 16:9, iMac Retina 4K 21.5"
|
||||||
|
{ 5120, 2160 }, // 21:9
|
||||||
|
{ 5120, 2880 } // 16:9, iMac Retina 5K 27"
|
||||||
|
};
|
Loading…
Reference in a new issue