425 Commits

Author SHA1 Message Date
twinaphex
a97b53f9f1 Reimplement driver.*_data_own variables so that they actually
work for a usecase now -

on Xbox, full teardown/re-initing of D3D context seems to be
error-prone - so by flagging driver.video_data_own to true inside
of the video_init function, we signal later on to the uninit_drivers
function that we DO NOT want to call the free function of this driver
and clean up the handle.

Instead, this driver should properly retain the handle by returning
the pre-existing handle when (for example) driver.video_data is
not NULL. You can see an example of this in xdk/xdk_d3d.cpp.

Overall still a quite clean solution and we will only use this in
extraordinary conditions (like this Xbox one I suppose) - full
teardown/setup will be the goal for all other platforms where we
can be certain that the state can be brought down and up entirely
during runtime without any problems.
2014-05-30 02:37:48 +02:00
twinaphex
1e1e95a663 (XDK) Don't put early return in free function since this
function won't be called during game time anyway
2014-05-30 01:53:55 +02:00
twinaphex
ffd68d4878 (Xbox) Seems that Xbox D3D does not free up all resources
for some reason and that they didn't anticipate full teardown/setup.
Not sure if I can confirm, but it has been hell so far trying to get
this to work. So, instead, implement a butt-ugly hack that forces
ownership over video/input lifetime state. Will properly refactor
the driver.*_data_own variables later so that this hack is less
ugly. Ideally we'd solve the teardown/setup problem but given this
is esoteric D3D gibberish - good luck debugging >_>
2014-05-30 01:48:55 +02:00
twinaphex
020546f923 (XDK) Take out Xbox-specific destruction code in gfx_ctx_destroy 2014-05-29 22:45:45 +02:00
twinaphex
6aabd86c13 (XDK D3D) Start implementing more functionality of render passes 2014-05-29 21:23:15 +02:00
twinaphex
1fbdb85fb0 (XDK D3D) Deinit more state in deinit_chain 2014-05-29 21:23:15 +02:00
twinaphex
abdb49bfa6 (XDK D3D) Make more like PC D3D driver pt. 2 2014-05-29 18:49:01 +02:00
twinaphex
66fa1114aa (XDK D3D) Make driver more like PC D3D driver 2014-05-29 18:11:41 +02:00
twinaphex
e909479edc (XDK D3D) Build fix 2014-05-29 17:55:30 +02:00
twinaphex
6e333c966c (Xbox/D3D) Make two drivers more alike 2014-05-29 17:35:24 +02:00
twinaphex
e53c3a0b60 Make xdk_d3d.cpp more like gfx/d3d9/d3d.cpp 2014-05-29 16:26:42 +02:00
twinaphex
fc1e9786bb (D3D) Work towards common base driver 2014-05-29 08:20:32 +02:00
twinaphex
5cef7e89b0 (XDK D3D) Make XDK D3D driver more like PC D3D8/D3D9 2014-05-29 04:30:32 +02:00
twinaphex
e1072da17f (XDK D3D) Cleanups 2014-05-29 01:21:08 +02:00
twinaphex
01059c7941 (XDK) XDK D3D driver cleanups 2014-05-29 01:05:44 +02:00
twinaphex
0b66427768 (Xbox) Make XDK input and D3D drivers more resilient 2014-05-28 23:16:37 +02:00
twinaphex
e1387a7b0b Take out image driver 2014-05-28 21:14:33 +02:00
twinaphex
f8e40f613b (Input) Move console input drivers to input/ directory - should start getting rid of
all these platform-specific folders cluttering up the codebase tree
(GL) Build fix for PS3 - current MiniGL implementation doesn't support SRGB
(Griffin) shader_common only baked in if HAVE_SHADERS defined
2014-05-13 17:01:27 +02:00
twinaphex
b2b5c6daec (Image) Put image functions through abstract interface
(Image) Add image_driver to retroarch.cfg to specify image driver to use
(Menu)  Add Image Driver to Drivers section
2014-05-10 20:26:58 +02:00
Themaister
105872a42c Add HW context support to X/EGL and KMS/EGL. 2014-04-19 16:06:25 +02:00
twinaphex
569de131a0 Move device enums outside of driver.h - and create new callback
for 'getting' the number of 'devices' the input driver supports
2014-04-17 20:47:43 +02:00
twinaphex
a40e942280 Add frame function to menu_ctx_driver_t struct 2014-04-01 04:45:00 +02:00
twinaphex
d1df068583 (XDK) Build fix 2014-03-09 18:51:35 +01:00
twinaphex
01f02568b2 (360/Menu) Implement render_messagebox through custom message
queue
2014-03-09 18:26:30 +01:00
twinaphex
82d1953115 (XDK 360) Convert unused convert_texture function 2014-03-08 04:42:21 +01:00
twinaphex
dabfafc7cc (D3D) Move stuff around 2014-03-08 04:03:12 +01:00
twinaphex
c512fccc18 (XDK) Build fix 2014-03-08 00:54:33 +01:00
twinaphex
950cac260b (XDK) Build fix 2014-03-07 20:19:26 +01:00
twinaphex
f512ba76d1 (XDK) Rename xdk_d3d_video_t to d3d_video_t 2014-03-07 20:17:25 +01:00
twinaphex
82c7e8f422 (XDK D3D) Build fix 2014-03-07 05:56:23 +01:00
twinaphex
39c1ec4672 Pass data param to more shader functions 2014-03-07 05:51:56 +01:00
twinaphex
ea88399281 (XDK D3D) Refactor initing code completely - make it more inline
with PC D3D driver
2014-03-07 05:31:24 +01:00
twinaphex
a28a97a1df (XDK D3D) Use faster blitting function XGCopySurface for
360
2014-03-06 22:40:38 +01:00
twinaphex
c5364fa012 (XDK D3D) Cleanups 2014-03-06 20:33:58 +01:00
twinaphex
c03c980c1e (XDK D3D) Create set_mvp 2014-03-06 18:29:54 +01:00
twinaphex
81644a6905 (XDK D3D) Cleanups #2 2014-03-06 05:05:26 +01:00
twinaphex
36c160b909 (XDK D3D) Cleanups 2014-03-06 04:58:21 +01:00
twinaphex
a99bea53d9 (360) Use faster SetTextureFetchConstant after first SetTexture transfer 2014-03-06 04:04:03 +01:00
twinaphex
887b57fef4 (XDK1) Use faster SwitchTexture after the first SetTexture
call - should change a texture in ten x86 instructions
2014-03-06 02:51:06 +01:00
twinaphex
6894cb81a8 (XDK1) Applies soft filtering and flicker filtering correctly now 2014-03-06 02:37:10 +01:00
twinaphex
0f357099c5 (Xbox 1) Move SetFlickerFilter/SetSoftDisplayFilter to render_pass 2014-03-06 02:22:16 +01:00
twinaphex
407cced43c (XDK D3D) Move g_extern.frame_count incrementin to swap_buffers 2014-03-05 22:24:39 +01:00
twinaphex
fb48a9e356 (XDK D3D) refactors 2014-03-05 22:10:36 +01:00
twinaphex
7331fd3f82 (XDK1) Aspect ratios/integer scaling works correctly now 2014-03-05 18:37:47 +01:00
twinaphex
c94bb7d06d (XDK D3D) Build fix 2014-03-05 18:15:41 +01:00
twinaphex
3cbd430b12 (XDK D3D) Cleanups 2014-03-05 17:25:30 +01:00
twinaphex
4e21522da1 (XDK1 D3D) Take out unused font->x/font->y 2014-03-05 06:55:16 +01:00
twinaphex
d5e9951c59 (XDK D3D) Simplify set_rotation 2014-03-05 06:35:42 +01:00
twinaphex
f0ff3b4ae7 (XDK D3D) Rename win_width/win_height to screen_width/screen_height 2014-03-05 06:25:39 +01:00
twinaphex
4cd603197b (XDK D3D) Refactor LPDIRECT3D member to g_pD3D 2014-03-05 06:11:39 +01:00