Commit Graph

1496 Commits

Author SHA1 Message Date
twinaphex 197f6a7763 Struct reordering, alignment 2020-09-01 19:59:56 +02:00
twinaphex e810b0251a (GL) Cleanups 2020-09-01 19:54:41 +02:00
twinaphex 5f08605680 Refactor joypad drivers 2020-08-30 05:29:32 +02: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 7b30d4eec2 Move macro up in the file 2020-08-27 12:13:21 +02:00
Justin Weiss 9ae2514009 [3DS] Update to libctru 2.0
Set USE_CTRULIB_2=1 to build with libctru 2.0. When unset, this code
is compatible with the older toolchain.

Some 2.0 changes addressed rare problems in earlier versions:

- Save / restore stack pointer for init / exit
  Otherwise, it could be outside of the range we deallocate.
- Run aptMainLoop in the audio driver to react correctly to sleep events

Other changes for 2.0:

- Remove ninjhax1 -- requires outdated APIs that have been removed
- Switch from __sync_arbiter to syncArbitrateAddress
- Use implicit gxCmdBuf
- Use gpuPresentBuffer for double buffering
2020-08-26 19:08:12 -07:00
twinaphex b4d26aca9c Turn vulkan_write_quad_vbo into macro 2020-08-27 02:29:32 +02:00
twinaphex 9672d9b12f Cleanup 2020-08-27 02:07:33 +02:00
twinaphex 6b3fcf79f0 (DXGI) Turn these into macros 2020-08-24 00:04:12 +02:00
twinaphex 54c31348ce Further simplify vulkan_write_quad_vbo 2020-08-19 06:06:30 +02:00
twinaphex 2f405c4088 Optimize vulkan_write_quad_vbo 2020-08-19 05:32:40 +02:00
twinaphex 6136035f2e Optimize vulkan_write_quad_vbo 2020-08-19 04:59:14 +02:00
twinaphex bbb4d12881 (vulkan_common.c) Optimize array access 2020-08-19 03:19:21 +02:00
twinaphex 4177ea4256 Update 2020-08-17 15:11:48 +02:00
twinaphex c81d06d0a1 Reorder structs, alignment 2020-08-17 15:09:19 +02:00
twinaphex f09df7c6e3 Reorder structs, alignment 2020-08-15 19:43:17 +02:00
twinaphex acfb7d0a23 Reorder structs, alignment 2020-08-14 23:13:05 +02:00
twinaphex 327d82cc1d Struct reordering/alignment 2020-08-14 22:21:05 +02:00
twinaphex bfc8a7beca Reorder structs/alignment 2020-08-14 21:45:41 +02:00
twinaphex dffa052958 Rearrange draw struct 2020-08-14 15:58:43 +02:00
twinaphex 379cc9ca4a Small cleanup to get_refresh_rate function 2020-08-04 03:12:51 +02:00
twinaphex 84d849f49b Optimize vulkan_acquire_next_image 2020-08-03 19:12:55 +02:00
twinaphex 72afa2f932 Cleanups 2020-08-03 16:33:54 +02:00
twinaphex 3653451c40 Cleanup 2020-08-03 15:51:07 +02:00
twinaphex fe59fdb39a Cleanups 2020-08-03 15:49:44 +02:00
twinaphex 332bcc7f9e Remove dxgi_update_title 2020-08-03 15:48:08 +02:00
twinaphex 89461eb6a5 Move vulkan gpu_list to struct data 2020-08-03 15:30:46 +02:00
twinaphex 2d10d9fd7a (D3D10) Move these static global variables to D3D10 struct 2020-08-03 12:39:46 +02:00
twinaphex db80281b0f (D3D11) Move static global variables to D3D11 state 2020-08-03 12:36:51 +02:00
Autechre 6c7143d02d
Merge pull request #10981 from yoshisuga/yoshisuga/ios-metal
iOS/tvOS Metal Renderer
2020-07-21 20:41:07 +02:00
twinaphex a5a3d64b18 (Vulkan) Cleanups 2020-07-20 06:31:15 +02:00
twinaphex 9ac9309991 Optimize call to vulkan_present 2020-07-20 04:45:12 +02:00
Yoshi Sugawara b83823f1f1 Add preprocessor flags for tvOS and other build settings; fix compiler errors when building for tvOS sdk 2020-07-19 11:42:19 -10:00
Yoshi Sugawara a2327be378 improved readability for references to the platform specific metal storage mode option; removed support for btstack since its not compiling and is less relevant for the iOS platform; removed commented out code 2020-07-19 07:48:07 -10:00
Yoshi Sugawara fd9ac64d55 Merge branch 'master' into yoshisuga/ios-metal 2020-07-19 00:33:54 -10:00
Yoshi Sugawara a19f1451cd removed debug logging statements; enable multi touch on metal view to support touchscreen controls; fixed setting the metal view drawable size based on the view bounds size in pixels 2020-07-19 00:11:15 -10:00
twinaphex 7c66f0adbc Simplify win32_check_window 2020-07-18 17:09:07 +02:00
twinaphex 04a0c55add Cleanups 2020-07-18 16:54:14 +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
Yoshi Sugawara 897aee0bcf add more logging, use autolayout constraints to pin metal view to superview to support orientation changes easier 2020-07-14 17:49:38 -10:00
twinaphex 88f742894d Move wayland header to input/common 2020-07-14 14:32:37 +02:00
twinaphex 0a492a49be (Vulkan) Fix regression 2020-07-13 15:22:27 +02:00
twinaphex 39d3dd4b3c Revert vulkan_framebuffer_generate_mips 2020-07-10 11:20:50 +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 77d630a0a5 (GDI) Only render framebuffer texture when menu is enabled 2020-07-09 09:40:13 +02:00
twinaphex f56b6a3a0f (GDI) Merge gdi_ctx.c into gdi_gfx.c 2020-07-09 09:25:10 +02:00
twinaphex e10f4eed8d (Vulkan) Cleanups 2020-07-09 03:48:42 +02:00
twinaphex e48ffd14cd Cleanups 2020-07-09 00:24:09 +02:00
twinaphex b94a3928e4 (MSVC) Buildfix 2020-07-07 21:04:45 +02:00
Yoshi Sugawara 6308ba1acb support ApplePlatform for iOS and conform app delegate class to it, move app delegate class to apple_platform.h, fix metal references for iOS 2020-07-07 05:03:42 -10:00
twinaphex 00518d3470 Add TODO/FIXME notes 2020-07-07 03:02:55 +02:00
Connor McLaughlin 7b7cffd545 (Vulkan) Fix incorrect structure type in vulkan_create_buffer 2020-07-05 22:36:58 +10:00
twinaphex 85d3a3723e (Vulkan) VULKAN_TRANSFER_IMAGE_OWNERSHIP - reuse existing macro 2020-07-03 18:05:40 +02:00
twinaphex 09180e64b5 Start unifying more macros 2020-07-03 18:00:40 +02:00
twinaphex a7a74a1d92 Cleanup 2020-07-03 17:51:07 +02:00
twinaphex 276e86a403 (Vulkan) Turn some of these functions into macros 2020-07-03 17:48:46 +02:00
twinaphex 25f682249f (Vulkan) Turn vulkan_image_layout_transition into macro 2020-07-03 08:45:53 +02:00
twinaphex 7a22eb1f44 Turn vulkan_image_layout_transition_levels into macro 2020-07-03 08:32:33 +02:00
twinaphex 108dc26c86 (MSVC 2010) Buildfix 2020-07-03 08:04:15 +02:00
twinaphex d9b4b44091 (Winraw) Cleanups 2020-07-02 07:07:42 +02:00
twinaphex 87b9c2a367 Add HAVE_REWIND switch 2020-07-01 21:04:05 +02:00
twinaphex 570f6ffb87 vulkan_copy_staging_to_dynamic - avoid memset 2020-06-29 00:14:50 +02:00
twinaphex 26969dd4e1 (Vulkan) Avoid callocs and memsets 2020-06-28 23:56:33 +02:00
twinaphex c600fbc6ff Cleanups 2020-06-28 21:33:07 +02:00
twinaphex bc73a815b7 Prevent memsets for vk->tracker 2020-06-28 19:18:48 +02:00
twinaphex 9e65ab63fe (vulkan_common) Prevent memsets and implicit memsets 2020-06-28 18:45:46 +02:00
twinaphex 9684bde88a Cleanup vulkan_create_texture 2020-06-28 18:25:17 +02:00
twinaphex 776e95d4e1 (vulkan_common.c) Cleanups 2020-06-27 18:28:33 +02:00
twinaphex 72d1a313ae (vulkan_common.c) Cleanups 2020-06-27 18:17:33 +02:00
twinaphex d8cf551608 Silence 'suggest braces around initialization of subobject' warning 2020-06-11 17:38:11 +02:00
Themaister f089e1ccf5 Vulkan: Do not emulate mailbox on Android. 2020-06-09 00:24:29 +02:00
Themaister cd4f22c275 Vulkan: Add path which uses WSI acquire semaphores.
Fence wait path has some issues on certain platforms. For now, gate this
on whether the GPU is integrated or not.
2020-06-09 00:24:29 +02:00
Themaister 15df55d011 Vulkan: Refactor swapchain index and frame index.
Do not tie these concepts together, it will not work for upcoming
refactor of swapchain logic.
2020-06-09 00:24:29 +02:00
Themaister 6f68571805 Vulkan: Use VK_LAYER_KHRONOS_validation in VULKAN_DEBUG=1.
LUNARG_standard_validation was deprecated and removed ages ago.
2020-06-09 00:24:28 +02:00
twinaphex fc491e9ea4 Add more environ logs 2020-06-08 17:32:36 +02:00
twinaphex 2660182d52 Get rid of gfx_widgets_ready call inside
gfx_widgets_frame
2020-06-08 05:45:15 +02:00
twinaphex 573eddb5a4 (Metal) Always run this regardless 2020-06-08 03:28:32 +02:00
twinaphex be76958070 Unneeded gdi_has_menu_frame 2020-06-07 02:56:56 +02:00
twinaphex b42897d0b6 (GDI) Weird code - clean this up 2020-06-07 02:55:51 +02:00
Guo Yunhe e9916df9d0 Change keys to upper case 2020-06-02 10:28:00 +03:00
Rinnegatamante 14a6c42e0d [VITA] Using a global to prevent erroneous vitaGL re-initializations. 2020-06-01 11:12:16 +02:00
twinaphex bc226305d7 (x11_common.c) Cleanup 2020-05-24 19:38:41 +02:00
twinaphex ad1aa59ce1 Cleanup != NULL comparisons 2020-05-19 21:15:06 +02:00
twinaphex 9ace693ec0 Refactor menu_driver_frame 2020-05-19 16:20:43 +02:00
twinaphex bde18ba86a Style nits 2020-05-12 14:36:27 +02:00
Olivier PARRA 5813228c6c [FIXES]GPU capture on Metal/OSX/NVidia
[FIX]RetroArch CRASH on Metal internal assert
_validateGetBytes:39: failed assertion `texture must not be a
framebufferOnly texture.' GPU Capture were done on a
framebufferOnly texture. Fix it by setting framebufferOnly
CAMetalLayer property to NO. Subsequent MTLTexture inherits from
this property.

[FIX]Capture black frames. Resulting PNG screenshots were black.
Since GPU texture where not sync with CPU,
getBytes:bytesPerRow:fromRegion:mipmapLevel: behavior is undefined
Fix it by adding synchronizeResource command to blitCommandEncoder
In order to keep performances, syncing is done ONLY when a GPU
Capture is requested.

[FIX]Corrupted image due to incorrect viewport copy
Modify code in charge of copying MTLTexture bytes to 24bits PNG
buffer.
2020-04-02 23:01:48 +02:00
twinaphex 7986561598 Rename menu widgets to display widgets 2020-03-13 03:58:33 +01: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 26bb0105c0 (Vita) Buildfix 2020-03-12 20:54:38 +01:00
twinaphex dfa1288988 (Win32) Move global state to struct 2020-03-12 17:47:49 +01:00