Commit Graph

201 Commits

Author SHA1 Message Date
twinaphex dc734aea55 (D3D9) Get rid of C++ memory header include 2013-12-31 23:26:12 +01:00
twinaphex 2d651bbc1d (D3D9) Get rid of unneeded headers 2013-12-31 23:23:02 +01:00
twinaphex d4850b3cd4 (D3D) Split up D3DVideo-specific code to separate file 2013-12-31 23:20:37 +01:00
twinaphex aa5a74ed7f (MSVC) Build fixes to D3D9 driver 2013-12-31 21:52:15 +01:00
twinaphex 44ff5afcc2 (D3D) Start brining D3D9 and XDK D3D drivers together 2013-12-31 21:24:17 +01:00
Themaister 132c3c46f7 Use struct texture_image instead of video_overlay_image. 2013-12-31 19:05:16 +01:00
twinaphex bb82c76a4c (D3D9) Fix up D3D driver - use RARC_PERFORMANCE macros 2013-12-22 17:41:08 +01:00
twinaphex 9852c5dc4c Rewrite perf interface - exposes callbacks now for RETRO_PERFORMANCE_INIT/RETRO_PERFORMANCE_START/RETRO_PERFORMANCE_STOP calls without messy, hardcoded preprocessor-dependent variables in macros - will update cores accordingly too 2013-12-18 19:03:08 +01:00
twinaphex 69a67b3df2 Change RARCH_PERFORMANCE_ macro calls to RETRO_PERFORMANCE 2013-12-17 19:14:57 +01:00
Themaister deadbbc906 Add keyboard callback for Windows.
Only tested in Wine, but seems to work fine.
2013-12-09 14:22:46 +01:00
twinaphex f8c37fc933 (Menu) Simplify menu preprocessor conditionals - there is now
one common catch-all define called HAVE_MENU
2013-11-08 04:36:47 +01:00
OV2 46345b0ddd win32: add win8 pointer support 2013-11-05 21:23:32 +01:00
ToadKing 375c3c6806 fix compile for SDL and DirectX video 2013-11-01 21:13:19 -04:00
Themaister 332dc3f38b Fixup overlay interface for D3D9. 2013-10-21 13:32:05 +02:00
twinaphex 849cfb680e Saves 'Show Framerate' setting to config file now too 2013-10-11 01:19:54 +02:00
Themaister fee10d3d76 Fix OSX/Windows build. 2013-10-08 22:49:50 +02:00
twinaphex c0c6ecc6cb Rewrite gfx_get_fps - now outputs proper string for FPS output 2013-10-07 20:17:07 +02:00
Themaister 178dc692c7 Do proper rounding in set_viewport.
Avoids edge cases where viewport sizes are miscalculated with -1 pixel
due to rounding errors.
2013-09-12 22:23:56 +02:00
Themaister b2bf3c12de Add swap_interval support.
Again, mostly useful for 120Hz monitors, and/or playing content which is
a fraction of monitor refresh rate.
2013-09-01 13:20:10 +02:00
Themaister 62c34c7871 Add black_frame_insertion support for 120 Hz monitors. 2013-08-30 09:35:13 +02:00
Themaister 02264f4d56 Fix Win32 derp. 2013-06-05 22:00:38 +02:00
Themaister 321ffcbca6 Calculate 1:1 PAR from right dimensions.
Frame cache can be stale or have awkward dimensions which
don't really reflect 1:1 PAR semantics.
2013-06-05 21:29:52 +02:00
Themaister 1521113e8f Build fixes. 2013-04-25 00:03:02 +02:00
Themaister ff75660c45 Clear out FBO targets correctly. 2013-04-21 15:39:14 +02:00
Themaister e696f1b18f Clear out backbuffer correctly. 2013-04-21 15:29:44 +02:00
Themaister 37acbc4b7a Fix overlay rotation bug in D3D9. 2013-04-21 15:14:49 +02:00
Themaister 54bf4f68a8 Fix single pass in D3D9. 2013-04-21 14:14:43 +02:00
Themaister dd351c9483 Always clear out backbuffer fully. 2013-04-21 14:09:48 +02:00
Themaister 8bb4cbae46 Avoid complete reinit on apply_state_changes.
Clean up multi-pass logic a bit in D3D9.
2013-04-21 14:04:16 +02:00
Themaister 068beedf3c Verify that RGUI texture is non-zero.
If we're converting, just use ARGB8888 in d3d9.
2013-04-21 12:07:57 +02:00
Themaister c7471ac133 Fix D3D9 viewport when X/Y is < 0. 2013-04-21 11:21:53 +02:00
Themaister 53b7d43b67 Rework to D3D9 aspect ratio handling. 2013-04-21 11:21:07 +02:00
Themaister e95a15d4ed CGP fixes in D3D9. 2013-04-21 11:18:55 +02:00
Themaister 1e4cc2164c Remove some unneeded/unused D3D9 stuff. 2013-04-21 00:54:25 +02:00
Themaister 2b0697205d Set LUT uniforms for vertex shader as well. 2013-04-16 14:27:24 +02:00
OV2 a56ef3e518 win32: allow null pointer as shader path in d3d 2013-04-13 17:10:49 +02:00
OV2 41336a506f win32: respect rgui fullscreen param in d3d 2013-04-13 17:10:49 +02:00
Themaister c17714ffbb Add full screen mode to set_texture_enable. 2013-04-13 16:49:25 +02:00
Themaister ad78c9fd77 Another Win32 fix. 2013-04-13 14:39:14 +02:00
Themaister e389220df8 Refactor frame_counter.
Graphics drivers get the task of updating this.
If threaded driver is used, main thread cannot update the counter
due to race conditions.
2013-04-13 14:28:12 +02:00
Themaister b9e6d04379 Fix Win32 build. 2013-04-12 09:21:41 +02:00
twinaphex 1171b7576a Get rid of set_blend callback - the rgui draw texture function is
now in charge of making sure texture is properly blended - note
to OV2/maister - test if this breaks D3D9 PC driver and if so
fix accordingly
2013-04-11 13:13:37 +02:00
OV2 549fe7f5b8 win32: add preliminary rgui support to d3d 2013-04-07 19:45:02 +02:00
Themaister f88ea04c28 Remove fixed shader index in set_shader. 2013-04-07 13:00:21 +02:00
Themaister 0c0a9b4ddb Fix Win32 build. 2013-04-07 02:02:41 +02:00
OV2 20d1fba464 win32: use shader_parse for d3d 2013-04-07 01:14:05 +02:00
Themaister c3ac3028b5 Reuse gl_disable_client_arrays. 2013-04-06 11:26:06 +02:00
twinaphex eb0feac9e3 (PS3/All) Purge fixed-style shaders again - this time avoiding
breakage on PS3. Maister -you will need to redo shader_parse.c
again though - and this time I need to test it on PS3 to avoid
a regression that happened two pages prior again
2013-04-06 05:46:09 +02:00
twinaphex 83ffe437b3 Revert "Fix Win32 build."
This reverts commit cf655355d7.
2013-04-06 03:54:18 +02:00
Themaister cf655355d7 Fix Win32 build. 2013-04-06 00:06:51 +02:00
OV2 a49f0ef576 win32: fix x/y scale types 2013-04-04 23:23:16 +02:00
OV2 2b1082df63 derp 2013-04-04 21:23:00 +02:00
OV2 7924e06732 win32: respect last float_framebuffer if applicable 2013-04-04 21:15:35 +02:00
OV2 d1b384ccaf win32: d3d9 float_fbo fix 2013-04-04 01:01:06 +02:00
OV2 0c3b1a7514 style 2013-03-30 14:37:29 +01:00
OV2 144fb0de43 win32: set stock shaders after last pass, destroy cg programs on deinit 2013-03-30 14:20:40 +01:00
OV2 c9f4db8dcc win32: add float_framebuffer and frame_count_mod to d3d9 2013-03-30 14:20:34 +01:00
OV2 88d457baab win32: style, remove left over opacity shader 2013-03-29 15:36:48 +01:00
OV2 29fa71b664 style 2013-03-29 11:50:05 +01:00
OV2 34b2a3b210 win32: use stock shader and color for overlay opacity 2013-03-29 11:48:33 +01:00
OV2 a00858a6be win32: use color in d3d stock shader, pass valid color values 2013-03-29 11:46:56 +01:00
OV2 f250cc14ab style 2013-03-28 15:33:50 +01:00
OV2 15f6026c86 win32: fix compile without HAVE_OVERLAY 2013-03-28 14:55:42 +01:00
OV2 66b4b45f5c win32: add opacity shader to overlay 2013-03-28 14:30:39 +01:00
OV2 b782ec2d33 win32: specify vertex declaration for overlay 2013-03-28 14:30:39 +01:00
OV2 a61afbde52 win32: add overlay to d3d9 2013-03-28 14:30:32 +01:00
Themaister 714a4aa3f7 Fix build for drivers. 2013-03-24 02:24:53 +01:00
Themaister 51b5a2df5c Refactor aspect_ratio member.
Mutate in g_extern.system.aspect_ratio to avoid
getting wrong aspect ratio on reentrancy.
2013-03-17 22:05:15 +01:00
Themaister 0c6e456e65 Merge branch 'master' into thread_video 2013-02-17 15:49:58 +01:00
Themaister 0dcf6791a4 Add integer scale to PC D3D9. 2013-02-17 15:43:31 +01:00
Themaister 843d079002 Begin adding threaded video driver wrapper. 2013-02-16 02:48:08 +01:00
Themaister 312980ee30 Add support for full-screen overlays. 2013-01-11 16:23:04 +01:00
Themaister e12f805708 Fix build for D3D9. 2013-01-08 04:08:15 +01:00
Themaister 0b4cf2d053 Update license headers to 2013. 2013-01-01 01:41:15 +01:00
Themaister a47860b230 Clarify intent of cg_shader init. 2012-12-19 21:33:59 +01:00
Themaister 71f2754e91 Revert "Move shader path init to init_cg()."
This reverts commit e0faf0cc47.
2012-12-19 21:33:10 +01:00
Themaister e0faf0cc47 Move shader path init to init_cg(). 2012-12-19 21:30:23 +01:00
OV2 c9c0936fd5 win32: fix initial multipass cg shader loading in d3d9 2012-12-19 21:16:26 +01:00
OV2 681241deb5 win32: fall back to software vertex processing if d3d9 init fails 2012-12-18 21:21:13 +01:00
twinaphex 799a9c35fb gfx_common.c - make gfx_get_fps into the main public function -
and remove the two public wrapper functions
2012-12-15 07:03:33 +01:00
Themaister ce47241697 Add perf test to d3d_read_viewport. 2012-11-20 18:06:52 +01:00
Themaister 18551b58e7 Report failed HRESULT in D3D init. 2012-11-20 00:06:51 +01:00
Themaister b1ea2dcc1e Log vertex/frag profiles used in Cg. 2012-11-18 23:51:38 +01:00
Themaister 5a5983a656 Fix build for VC10. 2012-11-14 22:57:49 +01:00
Themaister 02e1a2b402 Only declare "deleted" constructors. 2012-11-14 22:09:49 +01:00
OV2 54d39dff74 win32: make d3d9 compile in msvc, add linker pragmas to source files 2012-11-14 21:07:06 +01:00
Twinaphex512 3005adffc3 (D3D driver) Add HAVE_CG defines 2012-11-14 01:13:08 +01:00
Themaister ca44dee735 Fix crash on frame dupes in D3D9. 2012-11-10 13:57:21 +01:00
Themaister 18f704988d Add perf counter to d3d frame. 2012-11-04 00:14:43 +01:00
Themaister 266d1984ee Fix crash on going fullscreen in D3D9.
Fixes crash when going from minimized to (true) fullscreen.
Adds some more robustness by potentially recreating the whole driver if
::Reset calls fail.
2012-10-31 17:32:48 +01:00
Themaister 291280670d Set shaders on the fly. 2012-10-31 16:28:44 +01:00
Themaister f3831a5558 Fix second pass D3D9. 2012-10-31 16:28:44 +01:00
Themaister 3f359cc362 Add support for second pass D3D9 Cg (untested). 2012-10-31 01:12:18 +01:00
Themaister b8abbf8131 Style nits. 2012-10-31 00:40:02 +01:00
OV2 17b747d912 win32: fix for "current monitor" setting 2012-10-31 00:07:13 +01:00
OV2 69193e8b65 win32: regular fullscreen with multimon support, window resizing 2012-10-31 00:03:57 +01:00
Themaister 85b6437fdf Add multi-monitor to D3D9.
Untested as I don't have multiple monitors.
Refactored slightly in WGL to make the code more uniform.
The multi-monitor support should probably be refactored to w32_common or
something similar.
2012-10-30 11:49:40 +01:00
Themaister babec2f98a Win32 build fix. 2012-10-28 00:41:24 +02:00
Themaister 1908a81e1c Add RETRO_DEVICE_POINTER.
Implemented only for X11 so far.

Also clears up viewport_size call.
Changed to viewport_info to also grab X/Y info.
2012-10-28 00:38:31 +02:00
Themaister c0323a5677 Use Rarch state tracker. 2012-10-27 12:20:52 +02:00
Themaister e53dd431b4 Begin merging D3D9 driver. 2012-10-26 22:18:26 +02:00