Commit Graph

426 Commits

Author SHA1 Message Date
twinaphex c8f44ba94d (XDK) set_vertices changes 2014-05-30 05:35:10 +02:00
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
twinaphex 1e37515e2f (XDK D3D) Rename d3d_render_device member to dev 2014-03-05 06:05:48 +01:00
twinaphex 7311d6503f (XDK D3D) Use 'data' parameter instead of driver.video_data 2014-03-05 05:07:16 +01:00
twinaphex 11f67362dc (XDK1) Quick build fix 2014-03-05 04:27:15 +01:00
twinaphex 5a7b9dcad5 (XDK D3D) Cleanups 2014-03-05 04:05:12 +01:00
twinaphex 0c0209a705 (XDK D3D) Build fix 2014-03-05 02:33:46 +01:00
twinaphex 9d6ef702d6 (XDK D3D) Cleanups 2014-03-05 02:31:29 +01:00
twinaphex b5d6d4a455 (XDK D3D) Cleanups 2014-03-05 02:15:42 +01:00
twinaphex 4203408bee (XDK D3D) Take out another HAVE_HLSL ifdef 2014-03-03 05:56:04 +01:00
twinaphex 785273c209 (XDK1) Cleanup xdk_set_shader 2014-03-03 05:53:40 +01:00
twinaphex bd347fc5c7 (XDK1) Build fix 2014-03-03 05:49:43 +01:00
twinaphex d17ffbb625 (XDK 360) Get rid of some of the HLSL ifdefs 2014-03-03 05:38:13 +01:00
twinaphex ae761a220a (XDK D3D) Take out HAVE_FBO code - will need to completely
refactor all this code anyway
2014-03-03 05:29:55 +01:00
twinaphex 810a1298ad (XDK D3D) Cleanups 2014-03-03 04:28:19 +01:00
twinaphex 065e98ee29 (XDK D3D) Refactor code in xdk_d3d_frame - make it more like render_chain
from PC D3D driver
2014-03-03 02:22:41 +01:00
twinaphex 609f40a3bf (XDK D3D) Add black frame insertion code block - will be useless
for Xbox consoles so far anyway but just to keep in sync with
PC D3D driver
2014-03-03 02:05:34 +01:00
twinaphex 43a8520ee8 (XDK D3D) Refactor set_viewport code 2014-03-03 01:57:16 +01:00
twinaphex b127607caf (XDK D3D) Refactor to be more like D3D PC driver 2014-03-03 01:45:01 +01:00
twinaphex 2414a502fd (XDK D3D) Cleanups 2014-03-03 00:50:32 +01:00
twinaphex 9481b632ff (XDK) Don't clear analog state at start of poll function 2014-03-01 01:53:18 +01:00
twinaphex 5c3e73d08d (XDK) Comment out set_rumble for now - seems to auto-apply
strongest vibration from the beginning - would have to look
how to reimplement this
2014-02-28 16:36:03 +01:00
twinaphex 72d56f024d (PS3/XDK) Custom bind fixes 2014-02-28 01:08:16 +01:00
twinaphex 3f54b9fd28 (XDK) Simplify DrawVerticeFormats 2014-02-26 06:19:29 +01:00
twinaphex fd7f4d45cd Move image files to gfx/image/ 2014-02-25 21:24:15 +01:00
twinaphex 460670f074 Move sensor value reading to retro_sensor_interface 2014-01-20 14:52:53 +01:00
twinaphex 6be640f656 (XDK 360) Avoid warnings 2014-01-10 21:22:24 +01:00
twinaphex 5979a1b1c2 (XDK D3D) Put some guards around invoking function pointers 2014-01-10 16:20:58 +01:00
twinaphex 64474142dd (XDK) Move xdk_d3d_generate_pp to xdk_ctx.c 2014-01-09 13:40:17 +01:00
twinaphex be96c43220 (XDK) Fixed default analog axes 2014-01-09 13:24:01 +01:00
twinaphex 0a15a17d44 Update years on all license headers 2014-01-01 01:50:59 +01:00
twinaphex 115f706f24 (D3D) Split up version-agnostic defines into separate header file - will be
fleshed out later for D3D8, D3D9, etc.
2014-01-01 00:58:21 +01:00
Themaister 0d3428ad15 Add texture_image_free().
Cleans up deinit code for textures.
2013-12-31 19:16:29 +01:00
twinaphex 030012f664 (360) Some build fixes 2013-12-29 04:08:42 +01:00
twinaphex 3ea3901a2b (XDK) Implement analog code 2013-12-28 04:01:58 +01:00
twinaphex 1e52ee2f0f (XDK) Refactor input driver - now goes through joypad driver 2013-12-26 22:17:31 +01:00
twinaphex a77b7576b7 (RMenu XUI) Get rid of rmenu_xui header 2013-11-19 06:42:27 +01:00
twinaphex 79a4f790fe (XDK1) Menu texture now fills entire screen 2013-11-15 02:54:14 +01:00
twinaphex ef7d85c1ce (XDK D3D) Some texture menu tweaks 2013-11-15 02:44:17 +01:00
twinaphex 94a49d4273 (xdk_d3d) Remove HAVE_MENU_PANEL define 2013-11-12 12:31:21 +01:00
twinaphex 50dc298187 (Xbox 1) Remove menu_panel 2013-11-11 04:04:24 +01:00
twinaphex 54d2e2d321 (Xbox 1) Build fixes 2013-11-11 03:36:30 +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
twinaphex da8f8b6d63 Get rid of lifecycle_mode_state and use g_extern.lifecycle_state
instead
2013-11-07 21:44:44 +01:00
twinaphex 2c2542ff63 Rename message.c/message.h to message_queue.c/message_queue.h 2013-11-06 15:08:54 +01:00
twinaphex bc13d07026 (XDK) xdk input - fix up erroneous copy-paste - was accidentally
callocing struct
2013-11-04 00:13:09 +01:00
twinaphex 332f221c64 (XDK D3D) Prevent unitialized variables 2013-11-04 00:04:53 +01:00
twinaphex 0b307dc9fb (XDK1) Build fix 2013-11-03 21:37:31 +01:00
twinaphex 0dbbc33529 (XDK) Implement rumble (based on XInput Windows driver - not sure
if treating left motor as "strong" motor is correct behavior we
should take from the Windows driver
2013-11-03 21:32:16 +01:00
twinaphex c0e02d3957 (Android/General) Add preliminary sensor support to libretro API /
add accelerometer support to Android input driver
2013-11-03 00:27:58 +01:00
twinaphex 3e8166bfa5 (Input) Add new function to input driver - get_capabilities 2013-11-02 21:16:57 +01:00