Commit Graph

254 Commits

Author SHA1 Message Date
sonninnos b8188baeaf Automatic refresh rate switch where available 2021-08-21 01:15:41 +03:00
sonninnos 11b0667e72 (WIN32/Vulkan) Refresh rate fixes + cleanups 2021-08-12 18:33:58 +03:00
sonninnos 079070daf7 (WINRAW) Prevent Alt getting stuck when Alt-Tabbing 2021-08-07 04:24:20 +03:00
sonninnos 4e90b731d3 (WINRAW) Alt key fix 2021-08-05 15:24:41 +03:00
sonninnos 2c47d94bf5 (WINRAW) Change legacy virtual keys to scan codes 2021-08-04 19:23:56 +03:00
twinaphex bdba803909 wnd_proc_common_internal - move out code that was only relevant for
Winraw and put it into the Winraw specialized function callback, delay
initialization of mod variable until we use it
2021-08-03 13:46:58 +02:00
twinaphex 2af9441d35 Create separate wnd_proc functions for winraw 2021-08-02 16:14:58 +02:00
sonninnos 2962707d5f (WINRAW) Trigger joypad driver reinit on DEVICECHANGE 2021-08-01 22:35:27 +03:00
sonninnos 04962e1741 (D3D) Add common window title for D3D9+ 2021-06-06 22:24:47 +03:00
Ben 4b2f27eff8 Ver 0.9.2 SR2 (Switchres API) Implimantation
Fixed SR close match refresh bug.
Added menu high resolution option.
Fixed desktop restore bug cuusing endless resolution change requests.
Fixed file conflicts
Added destop restore resolution back in for manu only.
Pulled Switchres fixes.
Added better PI rsolution support.

Ver 0.7 SR2 (Switchres API) Implimantation

Removed HH experimetal check. This is better done via teh switchres.ini at present.
Fixed refresh rate bug. Now new resolution and refesh is added correctly.
Removed SR deinit from menu restore. Meanu now stays at last content resolution.

Ver 0.6.2 SR2 (Switchres API) Implimantation

Fixed super resolution bug casuing abnormal video size and aspect ratio
Fixed logging issue casuing seg falts on RA exit

Ver 0.6 SR2 (Switchres API) Implimantation

Ver 0.2 SR2 (Switchres API) Implimantation

Added forced super resolutions.
Added Multi-monitor/monitor selection support.
Added desktop resolution restore when switching back to menu only.
Added new menu items for 31KHz standard and 120hz monitor profiles.
Added new menu item INI. load monitor profile from switchrss.ini.
Fixed winraw driver. Coordinates new refreshed after a resolution change.
Fixed Menu aspect ratio in super resolutions.
Removed static glabals. These have been added to videocrt_switch struct.

Ver 0.1 SR2 (Switchres API) Implimantation

Removed old CRTSwitchRes method. Added new SR2 API implimantaion.
Resolution swithcing is now done by switchres libs. Both Linux and Windows
working with native and super resolutions. Working multi-monitor support
with monitor index selection. Working 31KHz support with standard and 120Hxz
modes. The monitor index selection is still done via the RA UI. Only choose
native and 15KHz form the CRT options in the RA UI as all options are now set
in the switchres.ini. All other CRT optoins in the RA UI currently do nothing.

Added SR wrapper to fix compile issues. Added back RPi functionality

Fixed windows resize/scaling issues on resolution change

Thanks @Calamity no more need for crt_switch_driver_refresh()

Fix broken case after prevous commit

Monitor preset options 15/31KHz now active. Added new meu option.

Moitor persets can now be choosen fom the RA UI. 15KHz and 31KHz will set
arcade_15 and aracde_31 respectivly. New option INI, if this is chosen your
monitor preset will be selected from your switchres.ini file.

Added 3KHhz, 120Hz. for old RA users. Renamed 31KHz to 31 KHz,  Standard

Fixed winraw input coordinates after switching resolution.

Code cleanup

Fixed menu aspect ratio issue

Added menu resolution restore after closing content

Fixed aspect ratio after menu resolution restore.

code clean up

Fxed menu Resulition Restore Aspect Ratio. When SR uses non integer scalled resolution.

super width bug with restoring menu resolution fix

added super resolution check after setting desktop resolutoion variables

when menu active only sr_deinit() used to restore desktop mode.

Fixed menu sr_deinit bug. now setting sr_active false

Removed static globals, added them to video_switch struct

Fixex compile bug due to comment //

Fixed compile issues doe to c++ comments in teh switchres_wrapper.h

Temporarily removed SR2 logging to fix compile isses for c90

added logging back in. Removed support for winnt and osx

Added define for C89. Disabled SR if defined C89

Removed all RA compile fixes fro C89 C90 etc. Swithing now working again.

Put Switchres behind HAVE_SR2. HAVE_SR2=no by default. --enable-sr2

Ver 0.5 SR2 Implimentation.

Ver 0.4 SR2 Implimantation.

Bake SR inside RA

Removed temporary log files

Disable switchres when C89/C99 builds.

Removed C89 and C90 checks for SR

Fixed switchres_wrapper.h location

Ver 0.3 SR2 Implimenation

Dissable logging for C89 __STDC__

Fix For RPi

fixed missing EOL

fixed RPi function definition

added vidrocrt_switch stuct to RPI funcion

fixed xoffset for RPi

Removed old RPi function call

SR disabled for videocore until VC4 switching ported

Reverted back to state 5c8a56c Bake SR inside RA

Use native win32 api for threads.

Fix static lib linking
LIBERROR would be defined twice otherwise + improper function names prefixed by __imp_

Added lidstc++ to makefile.common for switchres

Fixed RPi switching. Disabled Switchres for videocore unill it is ported.

removed RAA.log. Should not exist

Added check for when SR fails to set mode with an aspect ratio fix.

added video driver re init for RPi

GB, GBA and GBC core check, adjusted reseolutions and scale. Please turn on integer scalling in the RA UI

Added logas back in. Checking STDC verstion >= C11

Fixed c89 for loop declaration.

Code clean up. Added new functions

Fix resolution switching bug introduces with HH code clean up.

Fixed menu restore bug on closw content after code clean up

Moved SR logging to relevant RA logs

Update makefile. Checks for X11 and xrandr

fixed makefile

Use native win32 api for threads.

Fix static lib linking
LIBERROR would be defined twice otherwise + improper function names prefixed by __imp_

Update switchres_wrapper.* header comments

Update year copyright

DRMKMS: build only if libdrm has the required version

XRANDR: build only if xrandr is available

Simplified maklefile

Fixed RPI compile error with unsued functions.

As before

Disable Griffin. No switching support available. Never has been

Removed log file 1

Added Win32 static define

Added SR source

Removed Videocore check on destroy SR

Moved SR deinit to trigger earlier on RA exit.

Fixed compile error after upstream rebase

Fixed aspect ration bug cused by super resolutions. Temporarily disbabled SR logging

Re inabled runtim eSR loggind. Disableed all RARCH logging on retro_deinit_drivers

Removed srdeinit from menu restore. Menu stays in current reolution until a fix can be found

Fixed refresh rate changes when no reolution change is detected.

Forgot to add teh resolution cahge in with the refresh change oops

Fixed endless no detection log.

Removed HH check. This can been better adjusted using the switchres.ini

fixed compile issue

Added better PI crt switching and fixed typo

Pulled Swicthres fixes. Updated desktop restore resolution.

removed unused makefile

Lockec menu refresh to 60hz

fixed missing new line

Fixed file conflicts

Forced 640x480@60 for menu

Added high resolution menu option

Removed item logg checker

Fixed typos

Removed unused functions

Fixed SR close match refesh bug.

Fixed typo
2021-06-04 08:32:56 -07:00
twinaphex 4fb6bc9f33 Fix another camelcase variable 2021-05-19 16:13:05 +02:00
twinaphex b82a20ea0c We don't want camelcase notation variable names for RetroArch 2021-05-19 16:11:26 +02:00
twinaphex 9829051841 win32_localize_menu - replace strcmp call with string_is_not_equal 2021-05-18 19:49:57 +02:00
twinaphex e4a8f42ad1 win32_localize_menu - get rid of direct strcpy/strcat calls 2021-05-18 18:53:30 +02:00
twinaphex 7fe2ad81a0 HAVE_CLIP_WINDOW - don't define for this anything below MSVC 2005 2021-04-12 05:38:43 +02:00
twinaphex 611efea2bf More CXX_BUILD fixes 2021-03-22 15:20:51 +01:00
twinaphex e5ca68a518 Simplify video_driver_get_ptr 2021-03-21 17:33:44 +01:00
sonninnos 1e95683c06 (WINRAW) Key position fixes 2021-03-20 00:58:11 +02:00
sonninnos 6c3c2bea5f Logging cleanups 2021-02-18 18:35:31 +02:00
sonninnos aad12cc663 (Windows) Mouse grabbing/clipping with alt-tab 2021-02-07 20:18:04 +02:00
sonninnos e39ade0f05 (WIN32) Cursor clipping for grabbed mouse 2021-02-02 14:15:58 +02:00
Autechre cff0a4e202
MSVC2003 buildfix - (#11915)
* MIIM_STRING and MIIM_FTYPE only available if WINVER is higher than
or equal to 0x0500
2021-01-21 03:07:46 +01:00
Autechre 39e84fd5b2
Refactor Win32 menubar code - (#11914)
* Get rid of camelCase notation
* Turn functions into static functions if not used outside
* Rewrite while (true) as for (;;)
* Some general cleanups
2021-01-21 02:59:30 +01:00
Dwedit 217b6d2f9d Restored missing comments and fixes 2020-12-28 16:45:33 -05:00
Dwedit 34a31f8a1c ui_win32_application.c: Add support for accelerators to main win32 message loop
rarch.rc: Add accelerators for Open (Ctrl+O) and Fullscreen (Alt+Enter)
ui_win32_resource.h: Add accelerator resource ID definition
win32_common.c: Load accelerators, Localize Win32 menu items to current language, and display shortcut keys
2020-12-28 16:39:39 -05:00
Tony Jansson f497608055 (WINRAW) Keyboard mods fix 2020-11-13 04:25:07 +02:00
Tony Jansson eca9c452d8 (DINPUT) Simultaneous shift sticky fix 2020-11-09 21:20:46 +02:00
Tony Jansson c2e8752395 (DINPUT+WINRAW) Keyboard fixes 2020-10-14 21:23:06 +03:00
Ophidon 2f36c94f3f Variable BFI
BFI support added for 180hz / 240hz / etc. Solves issue with image retention from voltage issues at 120hz BFI. Also disabled BFI while in menu, as if set to an incorrect value for the current refresh rate, could cause severe flickering and difficulty reverting to the correct value.
2020-09-18 11:57:32 -04:00
twinaphex 4e594c6437 Move win32_window_init outside of ui_win32.c and to gfx/common/win32_common.c 2020-09-16 10:29:50 +02:00
Soar Qin 728c2b3af4 fix over-translating codes for window ClassName, as an additional fix to 3c6552b 2020-09-11 01:38:58 +08:00
twinaphex 8999d6e4a6 (DInput) Set a userdata struct for the window message loop properly -
get rid of input_get_data - we no longer need it
2020-08-29 03:41:33 +02:00
twinaphex d02d9573ab Silence unused variable warnings 2020-08-28 05:05:15 +02:00
twinaphex 4d1cfa9c41 Make the 'raw' versions the generic function for the message loop
callback - this way it's reused for SDL2 input driver too
2020-08-28 02:55:39 +02:00
twinaphex 32279c3a70 Split up wnd_proc_common_internal into two - one for dinput,
one for raw
2020-08-28 02:21:13 +02:00
twinaphex 73fc7c9873 Rename create_graphics_context to create_wgl_context 2020-08-28 01:29:23 +02:00
twinaphex d249f83c85 (Win32) Message loop - more cleanups 2020-08-28 01:20:54 +02:00
twinaphex 5f2e810879 Deduplicate code in WndProc function callback implementations 2020-08-28 00:38:15 +02:00
twinaphex acfb7d0a23 Reorder structs, alignment 2020-08-14 23:13:05 +02:00
twinaphex 379cc9ca4a Small cleanup to get_refresh_rate function 2020-08-04 03:12:51 +02:00
twinaphex 332bcc7f9e Remove dxgi_update_title 2020-08-03 15:48:08 +02:00
twinaphex 7c66f0adbc Simplify win32_check_window 2020-07-18 17:09:07 +02:00
twinaphex baa349f2ec Cleanup 2020-07-17 02:32:37 +02:00
twinaphex df73277ca8 (WGL) Bind different callback for Vulkan 2020-07-17 02:31:12 +02:00
Bernhard Schelling e0a9ded6a3 Fix invalid calls to dinput_handle_message when input driver is not set to dinput 2020-07-09 22:32:43 +09:00
twinaphex b94a3928e4 (MSVC) Buildfix 2020-07-07 21:04:45 +02:00
twinaphex 00518d3470 Add TODO/FIXME notes 2020-07-07 03:02:55 +02:00
twinaphex d9b4b44091 (Winraw) Cleanups 2020-07-02 07:07:42 +02:00
twinaphex b42897d0b6 (GDI) Weird code - clean this up 2020-06-07 02:55:51 +02:00
twinaphex bde18ba86a Style nits 2020-05-12 14:36:27 +02:00
twinaphex 7f8c13ae09 (GDI/Win32) Refactor code - handle doubleclick press on title bar
inside DInput driver
2020-03-13 02:20:31 +01:00
twinaphex 30e8ec6543 (win32_common.c) Put g_win32_resized into struct 2020-03-13 00:15:51 +01:00
twinaphex c796f3268b (win32_common.c) Cleanups 2020-03-13 00:11:21 +01:00
twinaphex b4da4940eb Revert "(Win32) Move global state to struct"
This reverts commit dfa1288988.
2020-03-12 22:10:24 +01:00
twinaphex dfa1288988 (Win32) Move global state to struct 2020-03-12 17:47:49 +01:00
twinaphex d63daacdf9 (GDI) Put gdi_menu_frame into struct 2020-03-07 16:50:25 +01:00
jdgleaver 7873b5f044 (QT) Populate 'db_name' and 'crc32' fields when adding entries to content history 2020-03-06 14:00:04 +00:00
twinaphex a7d679d391 Rename WndProcGL to WndProcWGL 2020-03-05 18:45:41 +01:00
twinaphex 1167a06a5a Settings Cleanups 2020-03-02 20:34:31 +01:00
twinaphex 1b0ab1c05f Cleanups 2020-02-21 07:34:53 +01:00
twinaphex ab94af68c1 Cut down on settings access 2020-02-19 19:31:00 +01:00
twinaphex 2e0f921ded Cleanups 2020-02-13 02:18:38 +01:00
twinaphex 8a989b65ee Cleanup 2020-01-19 13:19:25 +01:00
twinaphex 826b2245ec WndProcCommon - small optimization 2020-01-19 12:17:26 +01:00
twinaphex 51d6b467d6 (Win32) Buildfix 2020-01-19 04:56:12 +01:00
twinaphex c26c9483ec Cleanup WNDPROC functions 2020-01-18 11:34:50 +01:00
twinaphex a01e6652df Replace ZeroMemory with memset 2020-01-18 10:46:25 +01:00
twinaphex 57c00e7e26 Cleanup 2020-01-18 10:41:26 +01:00
twinaphex a67896ab2b Cleanup 2020-01-18 09:37:16 +01:00
twinaphex 142503d3b5 move win32_menu_loop and win32_browser to win32_common 2020-01-18 09:28:46 +01:00
twinaphex 3e1f56d57f Change function signature of win32_has_focus 2020-01-04 15:49:23 +01:00
twinaphex 91baea201a Change function signature of win32_show_cursor 2020-01-04 15:40:02 +01:00
twinaphex 051342cc8b Rewrite win32_get_video_output 2019-12-20 07:15:03 +01:00
twinaphex c7fd375120 Create video_driver_display_userdata_{set/get} 2019-09-22 07:35:05 +02:00
twinaphex 2609747243 MSVC buildfix 2019-08-29 20:20:35 +02:00
twinaphex 718d65d95d Take this out - too unsafe - fixes D3D12 driver 2019-08-29 12:30:56 +02:00
twinaphex 029f1c403e Turn function static 2019-08-29 10:16:26 +02:00
twinaphex 967aae04c8 Cleanups 2019-08-29 09:55:27 +02:00
twinaphex 9a49da10e5 (WndProcCommon) Put this back in 2019-08-29 09:31:08 +02:00
twinaphex df4f2a67e3 (Win32) Simplify WndProcCommon 2019-08-29 02:26:32 +02:00
twinaphex 3a7515c82f Cut down on code duplication 2019-08-28 23:58:15 +02:00
twinaphex 8780541de9 (Win32) Add deferred menu context reset - menu should properly rescale now
when we do a Win32 window resize
2019-08-24 20:03:09 +02:00
twinaphex dfc85f5908 Simplify win32_has_process 2019-07-26 06:10:02 +02:00
orbea e13ec54dc6 Fix --disable-overlay. 2019-07-21 10:26:42 -07:00
twinaphex ac47f54a8e (Win32) Not sure why menubar was disabled when threaded video is
enabled, going to assume enabling it is thread-safe
2019-07-20 11:45:28 +02:00
twinaphex b747bb22f4 Properly dehardcode program name now 2019-07-19 20:08:45 +02:00
twinaphex b04e057b5d Revert "(Win32/Vulkan) Dehardcode more program name strings"
This reverts commit 5cefcb8327.
2019-07-19 19:39:43 +02:00
twinaphex 5cefcb8327 (Win32/Vulkan) Dehardcode more program name strings 2019-07-19 19:27:24 +02:00
twinaphex 4c69dad0ce Define DEFAULT_MAX_PADS inside config.def.h - get rid of the messy
MAX_PADS macros everywhere
2019-07-19 12:55:38 +02:00
LazyBumHorse 208d23b39d fix hanging window under Windows 7 with threaded video 2019-07-17 23:27:43 +02:00
twinaphex bddfca940e Add HAVE_GDI switch 2019-07-11 13:18:38 +02:00
twinaphex e02ff9c40c (Win32) Reimplement PeekMessage implementation - this should be at the
start of the while loop
2019-07-11 03:49:33 +02:00
twinaphex 3cfa3ff1d8 Cleanups 2019-07-04 22:05:38 +02:00
twinaphex 6b9238198b Cleanups 2019-06-21 04:47:51 +02:00
twinaphex ee3208ac39 Integrate video_driver.c into retroarch.c 2019-06-17 15:10:22 +02:00
twinaphex 59b45f7812 Start making HAVE_OPENGL_CORE independent 2019-04-24 03:23:57 +02:00
twinaphex 04d062b3d4 (MSVC2003) Enable HAVE_OPENGL1; make HAVE_OPENGL1 independent from
HAVE_OPENGL
2019-04-22 22:48:23 +02:00
twinaphex 7372bafb44 Remove RARCH_CTL_SET_LIBRETRO_PATH 2019-04-21 06:03:02 +02:00
Brad Parker 10df615d14 add "Send Debug Info" option under Help 2019-03-07 19:17:54 -05:00
driver1998 6ea79bca36 Allow winraw and xinput to work without dinput in Windows
Necessary for Windows ARM32 Desktop (RT)
2019-02-26 21:29:43 +08:00