mirror of
https://github.com/holub/mame
synced 2025-04-23 08:49:55 +03:00
Merged sdl_video_config and win_video_config
This commit is contained in:
parent
f87a0ee7a8
commit
b414a032e6
@ -61,7 +61,7 @@
|
||||
// GLOBAL VARIABLES
|
||||
//============================================================
|
||||
|
||||
sdl_video_config video_config;
|
||||
osd_video_config video_config;
|
||||
|
||||
sdl_monitor_info *sdl_monitor_info::primary_monitor = NULL;
|
||||
sdl_monitor_info *sdl_monitor_info::list = NULL;
|
||||
|
@ -53,12 +53,6 @@ enum {
|
||||
// TYPE DEFINITIONS
|
||||
//============================================================
|
||||
|
||||
struct sdl_mode
|
||||
{
|
||||
int width;
|
||||
int height;
|
||||
};
|
||||
|
||||
class osd_dim
|
||||
{
|
||||
public:
|
||||
@ -160,18 +154,13 @@ private:
|
||||
float m_aspect; // computed/configured aspect ratio of the physical device
|
||||
};
|
||||
|
||||
struct sdl_video_config
|
||||
struct osd_video_config
|
||||
{
|
||||
// performance options
|
||||
int novideo; // don't draw, for pure CPU benchmarking
|
||||
|
||||
// global configuration
|
||||
int windowed; // start windowed?
|
||||
int prescale; // prescale factor
|
||||
int keepaspect; // keep aspect ratio
|
||||
int numscreens; // number of screens
|
||||
int centerh;
|
||||
int centerv;
|
||||
|
||||
// hardware options
|
||||
int mode; // output mode
|
||||
@ -179,13 +168,16 @@ struct sdl_video_config
|
||||
int syncrefresh; // sync only to refresh rate
|
||||
int switchres; // switch resolutions
|
||||
|
||||
int fullstretch;
|
||||
int fullstretch; // FXIME: implement in windows!
|
||||
|
||||
// vector options
|
||||
float beamwidth; // beam width
|
||||
// ddraw options
|
||||
int hwstretch; // stretch using the hardware
|
||||
|
||||
// d3d, accel, opengl
|
||||
int filter; // enable filtering
|
||||
//int filter; // enable filtering, disabled if glsl_filter>0
|
||||
|
||||
// OpenGL options
|
||||
int filter; // enable filtering, disabled if glsl_filter>0
|
||||
int glsl;
|
||||
int glsl_filter; // glsl filtering, >0 disables filter
|
||||
char * glsl_shader_mamebm[GLSL_SHADER_MAX]; // custom glsl shader set, mame bitmap
|
||||
@ -197,6 +189,20 @@ struct sdl_video_config
|
||||
int allowtexturerect; // allow GL_ARB_texture_rectangle, default: no
|
||||
int forcepow2texture; // force power of two textures, default: no
|
||||
|
||||
// dd, d3d
|
||||
int triplebuf; // triple buffer
|
||||
|
||||
//============================================================
|
||||
// SDL - options
|
||||
//============================================================
|
||||
int novideo; // don't draw, for pure CPU benchmarking
|
||||
|
||||
int centerh;
|
||||
int centerv;
|
||||
|
||||
// vector options
|
||||
float beamwidth; // beam width
|
||||
|
||||
// perftest
|
||||
int perftest; // print out real video fps
|
||||
|
||||
@ -211,6 +217,6 @@ struct sdl_video_config
|
||||
// GLOBAL VARIABLES
|
||||
//============================================================
|
||||
|
||||
extern sdl_video_config video_config;
|
||||
extern osd_video_config video_config;
|
||||
|
||||
#endif
|
||||
|
@ -32,7 +32,7 @@
|
||||
// GLOBAL VARIABLES
|
||||
//============================================================
|
||||
|
||||
win_video_config video_config;
|
||||
osd_video_config video_config;
|
||||
|
||||
|
||||
|
||||
@ -170,7 +170,7 @@ float win_monitor_info::aspect()
|
||||
// winvideo_monitor_from_handle
|
||||
//============================================================
|
||||
|
||||
win_monitor_info *winvideo_monitor_from_handle(HMONITOR hmonitor)
|
||||
win_monitor_info *win_monitor_info::monitor_from_handle(HMONITOR hmonitor)
|
||||
{
|
||||
win_monitor_info *monitor;
|
||||
|
||||
|
@ -111,6 +111,7 @@ public:
|
||||
// static
|
||||
|
||||
static BOOL CALLBACK monitor_enum_callback(HMONITOR handle, HDC dc, LPRECT rect, LPARAM data);
|
||||
static win_monitor_info *monitor_from_handle(HMONITOR monitor);
|
||||
|
||||
private:
|
||||
HMONITOR m_handle; // handle to the monitor
|
||||
@ -120,33 +121,30 @@ private:
|
||||
char * m_name;
|
||||
};
|
||||
|
||||
struct win_video_config
|
||||
struct osd_video_config
|
||||
{
|
||||
// global configuration
|
||||
int windowed; // start windowed?
|
||||
int prescale; // prescale factor
|
||||
int keepaspect; // keep aspect ratio
|
||||
int numscreens; // number of screens
|
||||
render_layer_config layerconfig; // default configuration of layers
|
||||
|
||||
// per-window configuration
|
||||
//osd_window_config window[MAX_WINDOWS]; // configuration data per-window
|
||||
|
||||
// hardware options
|
||||
int mode; // output mode
|
||||
int waitvsync; // spin until vsync
|
||||
int syncrefresh; // sync only to refresh rate
|
||||
int triplebuf; // triple buffer
|
||||
int switchres; // switch resolutions
|
||||
|
||||
int fullstretch; // FXIME: implement in windows!
|
||||
|
||||
// ddraw options
|
||||
int hwstretch; // stretch using the hardware
|
||||
|
||||
// d3d options
|
||||
// d3d, accel, opengl
|
||||
int filter; // enable filtering
|
||||
//int filter; // enable filtering, disabled if glsl_filter>0
|
||||
|
||||
// OpenGL options
|
||||
//int filter; // enable filtering, disabled if glsl_filter>0
|
||||
int glsl;
|
||||
int glsl_filter; // glsl filtering, >0 disables filter
|
||||
char * glsl_shader_mamebm[GLSL_SHADER_MAX]; // custom glsl shader set, mame bitmap
|
||||
@ -157,21 +155,35 @@ struct win_video_config
|
||||
int vbo;
|
||||
int allowtexturerect; // allow GL_ARB_texture_rectangle, default: no
|
||||
int forcepow2texture; // force power of two textures, default: no
|
||||
|
||||
// dd, d3d
|
||||
int triplebuf; // triple buffer
|
||||
|
||||
//============================================================
|
||||
// SDL - options
|
||||
//============================================================
|
||||
int novideo; // don't draw, for pure CPU benchmarking
|
||||
|
||||
int centerh;
|
||||
int centerv;
|
||||
|
||||
// vector options
|
||||
float beamwidth; // beam width
|
||||
|
||||
// perftest
|
||||
int perftest; // print out real video fps
|
||||
|
||||
// X11 options
|
||||
int restrictonemonitor; // in fullscreen, confine to Xinerama monitor 0
|
||||
|
||||
// YUV options
|
||||
int scale_mode;
|
||||
};
|
||||
|
||||
|
||||
|
||||
//============================================================
|
||||
// GLOBAL VARIABLES
|
||||
//============================================================
|
||||
|
||||
extern win_video_config video_config;
|
||||
|
||||
|
||||
//============================================================
|
||||
// PROTOTYPES
|
||||
//============================================================
|
||||
|
||||
win_monitor_info *winvideo_monitor_from_handle(HMONITOR monitor);
|
||||
extern osd_video_config video_config;
|
||||
|
||||
#endif
|
||||
|
@ -847,10 +847,10 @@ win_monitor_info *win_window_info::winwindow_video_window_monitor(const osd_rect
|
||||
p.left = proposed->left();
|
||||
p.bottom = proposed->bottom();
|
||||
p.right = proposed->right();
|
||||
monitor = winvideo_monitor_from_handle(MonitorFromRect(&p, MONITOR_DEFAULTTONEAREST));
|
||||
monitor = win_monitor_info::monitor_from_handle(MonitorFromRect(&p, MONITOR_DEFAULTTONEAREST));
|
||||
}
|
||||
else
|
||||
monitor = winvideo_monitor_from_handle(MonitorFromWindow(m_hwnd, MONITOR_DEFAULTTONEAREST));
|
||||
monitor = win_monitor_info::monitor_from_handle(MonitorFromWindow(m_hwnd, MONITOR_DEFAULTTONEAREST));
|
||||
}
|
||||
|
||||
// in full screen, just use the configured monitor
|
||||
|
Loading…
Reference in New Issue
Block a user