Commit Graph

720 Commits

Author SHA1 Message Date
twinaphex 3714bb552f (Apple) Change __IPHONE_3_0 to __IPHONE_4_0 for AVFoundation camera 2014-11-18 18:11:43 +01:00
Twinaphex 0f43deb6d2 (Apple) Start making camera driver OSX-compatible (OSX 10.7 and up/requires AVFoundation) 2014-11-18 18:04:17 +01:00
twinaphex 063470f652 (OSX PPC) Finally works 2014-11-17 21:31:52 +01:00
Mike Robinson 06c102d337 Add audio_max_timing_skew setting
Let users enable very large timing skews if they don't mind
inaccurate audio pitch.
2014-11-16 14:24:58 +00:00
Higor Eurípedes 17c715748d (driver.c) Fix invalid write 2014-11-12 13:14:44 -03:00
twinaphex e872bf69be Use C-style comments 2014-11-12 14:34:48 +01:00
twinaphex 4d5c7a05d1 (Android) C90 build fixes 2014-11-12 14:32:08 +01:00
Jay McCarthy 8a4f65e227 Moving function 2014-11-11 12:23:24 -05:00
Jay McCarthy f2f96bcac8 First draft of ios_menu 2014-11-04 22:01:01 -05:00
twinaphex 4f40c14d69 Move menu code up one root dir 2014-10-28 19:54:23 +01:00
twinaphex d3629f06f1 Rename file.c/file.h to content.c/content.h 2014-10-21 23:44:03 +02:00
Mike Robinson 9d9394662b Fix buffer overflow in dummy_pixels
Size needs to be 32 to allow for 4x4 at pitch 8
2014-10-18 18:29:37 +01:00
Toad King e8f2f92eec change dummy pixel to be a 4x4 texture, works better with some platforms where texture dimensions should be multiples of 4 2014-10-18 00:55:14 -05:00
twinaphex d56105b6e5 Some more stdio.h header includes removed 2014-10-15 07:00:51 +02:00
Twinaphex 3b7dfea93d driver.c - Fix warnings 'declaration shadows a global variable' 2014-10-14 18:42:47 +02:00
Mike Robinson 63741eeb57 Pass flags to init_drivers/uninit_drivers
Allow init/uninit of specific drivers instead of all.
2014-10-09 05:16:00 +01:00
Twinaphex 6f951cbd8b Merge pull request #1106 from lakkatv/xmb
Xmb
2014-10-09 02:41:33 +02:00
twinaphex 3ba45d3eae Create init_lists in menu display driver 2014-10-09 01:31:11 +02:00
Jean-André Santoni 7018d58731 (XMB) Initial commit 2014-10-09 01:21:22 +02:00
twinaphex 1fe95bdafb Create menu_init_list and menu_free_list 2014-10-09 00:23:39 +02:00
twinaphex 3603a56c01 Add null gfx context driver 2014-10-07 14:31:10 +02:00
twinaphex 88dbe4ee63 (Apple) Put safeguards around input_state/button_pressed functions 2014-10-07 04:12:41 +02:00
SuperrSonic e4ed9f098d Deflicker stuff 2014-10-04 01:26:00 -04:00
twinaphex 4f30e1a3d7 A lot of functions could be made static in driver.c 2014-10-03 12:51:02 +02:00
Twinaphex 7027f974eb Merge pull request #1080 from mprobinson/joypad-driver
Fix joypad driver setting
2014-10-03 09:53:47 +02:00
Mike Robinson b165b8fa82 Fix joypad driver setting
input_common.c was loading the first available joypad driver no
matter what input driver was selected, and the joypad driver menu
was non-functional. Allow choice of joypad driver from the menu.
2014-10-03 01:40:47 +01:00
twinaphex c25bc493ab Add RARCH_CMD_SHADER_DIR_INIT/RARCH_CMD_SHADER_DIR_DEINIT 2014-10-03 00:13:50 +02:00
aliaspider 6f15383b2c initialize frame_cache and texture_frame to a dummy frame in
init_video_input() to avoid undefined behavior in the init phase in case
they are used before being set.
2014-10-02 21:02:27 +01:00
twinaphex 53c7bf65ed Turn fixed-function vertex coord/matrix code into macros 2014-10-02 14:50:24 +02:00
twinaphex 3a2f3755ad Rename some files 2014-10-01 23:27:52 +02:00
twinaphex dead11f182 Move driver_active variables over to driver global 2014-10-01 22:34:48 +02:00
twinaphex 0311480bc4 driver.c - Indent style nits 2014-10-01 13:32:41 +02:00
twinaphex c016867b2b driver.c - declare variables at top 2014-10-01 13:04:58 +02:00
twinaphex e58c9dc179 Move init_shader_dir/deinit_shader_dir to retroarch.c and make them
non-static functions
2014-10-01 12:49:21 +02:00
twinaphex 1a94f14e50 Move recording and resampler drivers to 'driver' global struct -
moving it outside of g_extern
2014-09-30 21:23:00 +02:00
Twinaphex c37e1505ae Check if driver.frontend_ctx is not NULL in find_video_driver 2014-09-20 23:30:54 +02:00
Higor Eurípedes b6dd4df368 (frontend) Add support for frontend specific video drivers 2014-09-15 16:48:55 -03:00
Higor Eurípedes 85cef84bd4 (driver.c) Add driver_video_resolve()
This function returns the real video driver data when threaded video is
in use.
2014-09-12 17:26:26 -03:00
Lioncash 4e0b25d0fc Remove some dead stores 2014-09-11 09:30:40 -04:00
Jean-André Santoni 5e433abf8b (GLUI) GL based RGUI display driver clone 2014-09-11 04:07:07 +02:00
twinaphex e84db78571 Remove extra conditional for checking if use_float funcptr
points to anything
2014-09-09 22:31:37 +02:00
twinaphex 598421e7d7 Move resampler drivers to audio/resamplers 2014-09-09 21:54:41 +02:00
Lioncash 6b84ccdcef Make some functions static 2014-09-06 00:10:52 -04:00
twinaphex ceb4e05e88 Cleanups - C-style comments, 80-char limit, etc 2014-09-02 04:43:31 +02:00
twinaphex a44665bcae Refactor prev/next driver settings 2014-08-31 19:06:32 +02:00
twinaphex e196f69234 (driver.c) Cleanups 2014-08-27 00:59:18 +02:00
twinaphex 31e7f1009d Refactor find_prev/find_next menu driver functions 2014-08-26 23:19:48 +02:00
twinaphex d05d909373 Get rid of some duplicate get_prev/get_next functions 2014-08-26 23:11:35 +02:00
twinaphex db396976ee Refactor find_prev_* / find_next_* functions 2014-08-26 22:26:23 +02:00
twinaphex 5668e1b89c Cleanups - remove extraneous else 2014-08-26 21:22:01 +02:00
twinaphex 7ce5ebb927 Refactor find_driver_index 2014-08-26 21:13:14 +02:00
twinaphex 623c02405d Refactor find_driver_index 2014-08-26 20:55:24 +02:00
twinaphex e4629c87cb find_driver_index - cleanups 2014-08-26 20:41:39 +02:00
twinaphex 3cfe954b74 Combine all driver_index* functions 2014-08-26 20:32:48 +02:00
twinaphex eb6ff437f3 Move all drivers to beginning of driver.c 2014-08-26 20:21:23 +02:00
twinaphex a468d9e860 Remove unused menu_ctx_find_driver 2014-08-26 20:18:53 +02:00
twinaphex 4dea8caa6f (SoftFilter) Refactor most code associated to SoftFilter plugin - load .filt
files instead of the dynamic libraries directly. Options can be
set in the config file.

There's still a problem with config file options - will work this
out later.
2014-08-19 19:38:33 +02:00
twinaphex 278a758ba9 driver.c - declare variables at top of function 2014-08-16 19:07:21 +02:00
twinaphex ba6d353498 Add RARCH_CMD_AUDIO_SET_BLOCKING_STATE/RARCH_CMD_AUDIO_SET_NONBLOCKING_STATE 2014-08-16 18:56:56 +02:00
twinaphex 2d4cd0a56e Add new cmd enums to rarch_main_command 2014-08-16 18:39:18 +02:00
twinaphex 823be1ce41 Get rid of more driver_funcs macros 2014-08-15 20:51:59 +02:00
Twinaphex 76ee895f24 Add fallback for find_location_driver 2014-08-15 18:38:02 +02:00
Twinaphex ba91b2a8f3 Add fallback for find_camera_driver 2014-08-15 18:29:51 +02:00
Twinaphex e6e96cc74d (OSK) Add fallback for find_osk_driver 2014-08-15 18:13:29 +02:00
twinaphex 33ddbeb149 Rewrite more driver_funcs macros 2014-08-14 20:13:56 +02:00
twinaphex 9992e33a36 Replace more driver_funcs macros 2014-08-14 19:56:45 +02:00
twinaphex e851d279f8 Start getting rid of driver_funcs.h macros 2014-08-14 19:54:22 +02:00
twinaphex 0966d384d8 (OSK) Get rid of HAVE_OSK ifdef 2014-08-14 06:40:33 +02:00
twinaphex 88af50ab82 Add null drivers 2014-08-14 03:05:44 +02:00
twinaphex e1a122843b Add null camera - remove HAVE_CAMERA ifdefs 2014-08-14 02:55:04 +02:00
twinaphex 027bd68bb3 Add location/null.c - get rid of HAVE_LOCATION ifdefs 2014-08-14 02:15:48 +02:00
twinaphex 38ec3146f3 Cleanup driver-contexts 2014-08-13 08:55:29 +02:00
twinaphex fcbbf08109 (Recording) Bake in HAVE_RECORD implicitly 2014-08-12 05:28:43 +02:00
Higor Eurípedes b6df19dffb (SDL*) Merge input drivers 2014-08-11 19:47:30 -03:00
twinaphex 9df8cda62c Refactor video_xscale/video_yscale into video_scale - scales
both X and Y according to same value
2014-08-11 23:57:57 +02:00
twinaphex f910a68083 (GX) Ifdef g_settings.vwidth with GEKKO 2014-08-11 11:00:11 +02:00
Twinaphex 0998c5a203 Merge pull request #866 from SuperrSonic/master
Basic video encoder changer (viWidth), affects GC/Wii only
2014-08-11 10:57:01 +02:00
Higor Eurípedes f53b67aab7 (SDL2) Use sdl_audio.c as audio driver 2014-08-10 19:54:49 -03:00
SuperrSonic 08d95723a9 added viwidth stuff 2014-08-10 16:44:17 -04:00
Higor Eurípedes 46beb117ef (SDL2) Add input driver 2014-08-10 15:00:21 -03:00
Higor Eurípedes 1ea504fcfe (SDL2) Added video driver 2014-08-10 13:39:31 -03:00
twinaphex c564278809 Refactor record init/deinit 2014-08-02 14:17:20 +02:00
twinaphex ea64ea465a driver.c - cleanups 2014-08-02 13:44:36 +02:00
twinaphex e110bd90f5 Refactor DSP filter init/deinit 2014-08-02 13:40:38 +02:00
twinaphex 7d4b6b23c5 Refactor overlay init/free 2014-08-02 12:36:48 +02:00
twinaphex d70693345c Refactor rarch_set_fullscreen calls to rarch_main_command 2014-08-02 03:56:19 +02:00
twinaphex 8082dfb9cc Refactor away rarch_reinit_drivers 2014-08-01 17:26:11 +02:00
twinaphex 65a64c1111 Backport Themaister - Move g_settings.audio.in_rate to g_extern.audio_data.
It's not a setting.
2014-07-23 07:15:57 +02:00
twinaphex 14dbd27873 (Driver) Move find_audio_driver outside of HAVE_THREADS in init_audio -
man, this whole audio/input/video initing/deiniting is still hacky as shit.
2014-07-18 19:58:05 +02:00
twinaphex 5b727b58b7 Make init_video_input more robust - just failing the entire program
like this instead of defaulting to sane defaults is unacceptable
2014-07-18 19:40:26 +02:00
Themaister 1c1c92f38a Drop misleading "fallback" path for input drivers.
The codepath cannot be hit anyways due to checks in find_input_driver().
2014-07-18 18:42:27 +02:00
Tobias Jakobi 9a38d77655 Remove the lima video driver
The driver is now superseded by the exynos video driver. Also limare
only works up to mali kernelspace driver version r3p2, which makes
the driver nonfunctional with the latest r4p0.
2014-07-17 14:55:56 +02:00
Tobias Jakobi 7efa9def07 Add exynos video driver
Documentation is provided in README-exynos.
2014-07-17 14:41:44 +02:00
twinaphex 039aec9019 Make the init input check more robust in init_video_input 2014-07-17 03:19:23 +02:00
Twinaphex 63cd0eb927 Make find_audio_driver/find_input_driver more robust 2014-07-17 03:17:46 +02:00
Twinaphex a990d7e319 Make find_video_driver more robust in case of failure 2014-07-17 03:03:05 +02:00
Themaister 53bc4c08ed Check recording based on g_extern.rec and not g_extern.recording.
Fixes some segfaults where g_extern.recording and g_extern.rec mismatch.
Makes it possible to record without loading content directly from CLI.
2014-06-16 15:50:53 +02:00
twinaphex 966db762cf (Menu) More replacement of namespace prefix 'rgui' with 'menu' 2014-06-10 02:06:10 +02:00
twinaphex d3301083ac Revert "Create public init_menu/uninit_menu"
This reverts commit 8f7e9edd88.
2014-06-06 00:51:56 +02:00
twinaphex 8f7e9edd88 Create public init_menu/uninit_menu 2014-06-05 20:26:21 +02:00
twinaphex 07db4ea692 Menu context destroy needs to be grouped in HAVE_MENU ifdef 2014-06-02 22:00:33 +02:00
twinaphex 8e04ac2f12 (PS3 image) Some more safety checks
(Driver) Safety check before invoking menu_context_destroy
2014-06-02 18:08:08 +02:00
Themaister 4449f071ed Create rarch_reinit_drivers().
Avoid rarch_set_fullscreen() calls which are non-intuitive.
2014-06-01 00:42:36 +02:00
Themaister 41e770eb0c Derp, call context_reset after init_menu. 2014-06-01 00:29:49 +02:00
Themaister 206ea8012f Don't completely reinit menu driver unless we're killing Rarch. 2014-05-31 23:54:07 +02:00
Themaister f1b3252193 Don't init assets from init.
Rename to context_reset/context_destroy and let the driver init/uninit
step signal the menu when the context is going down and coming up.
2014-05-31 23:24:46 +02:00
twinaphex b2d9c60613 (Menu) Don't pass menu data to menu_iterate
(Menu) Don't pass menu data to backend - postprocess
2014-05-30 20:53:10 +02:00
twinaphex d267f27130 (Style nit) Rename 'init' to 'initialize' in comments
(Filter) Get rid of questionable ifdef for HAVE_FILTERS_BUILTIN for
filter init
2014-05-30 18:23:32 +02:00
twinaphex af440bf545 (Menu) Menu now gets inited from driver.c instead of frontend.c
(Console) Better way to 'restart' instead of using the function
'restart' - call rarch_set_fullscreen instead. 'Restart' function
in driver interface can go now
(Menu) Menu now gets properly deinited/reinited when - say -
rarch_set_fullscreen is toggled or some other state change like this.
If init_assets function of menu_ctx_driver is implemented, this should
ensure all GL/D3D assets get 'cleaned up' prior to teardown of the video
driver, and properly reinited after the video driver is brought up again
2014-05-30 17:49:04 +02:00
twinaphex 6f2927cbac (Filter) rarch_init_failter - Filter init failure was wrongly reported
for HAVE_FILTERS_BUILTIN targets
2014-05-30 09:11:56 +02:00
twinaphex 985a5d9779 Remove unnecessary uninit_video_misc 2014-05-30 03:14: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 346701fce8 (Xbox) Make hack less ugly 2014-05-30 02:01:29 +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 d70b8a0f15 Get rid of global driver init/uninit bullshit - we're going to do
console initing/deiniting properly once and for all
2014-05-28 22:09:42 +02:00
twinaphex e1387a7b0b Take out image driver 2014-05-28 21:14:33 +02:00
twinaphex 7b4e735821 Cleanup global_init_drivers/global_uninit_drivers 2014-05-28 18:40:03 +02:00
twinaphex b2d32fed3e Place find_image_driver above adjust_system_rates in init_drivers 2014-05-28 08:48:49 +02:00
twinaphex db189e1094 init_drivers - if driver.image is NULL, set it 2014-05-28 08:44:38 +02:00
twinaphex 0ea15de950 (GL) Force fp_fbo to false for PS3 for now 2014-05-27 21:55:54 +02:00
twinaphex 8fc357647d (RARCH_CONSOLE) Add find_image_driver() to global_init_drivers 2014-05-27 19:05:04 +02:00
twinaphex f788249c59 (Menu) Add get_default_menu function for default settings 2014-05-27 17:13:53 +02:00
twinaphex c55693855b (Menu) Add find_menu_driver to global_init_drivers as well 2014-05-26 23:39:21 +02:00
twinaphex 17267ff316 (Menu) ifdef find_menu_driver in init_drivers_pre 2014-05-26 23:20:00 +02:00
twinaphex e69b9c4f8a (Menu) Initialize menu driver during init_drivers_pre 2014-05-26 23:18:49 +02:00
twinaphex 619c96187b (Driver.c) driver.c was a big mess - split up into separate files
that get included in. Should probably be properly refactored later
on for all targets so that each included file becomes its own
object file
2014-05-26 19:01:40 +02:00
Themaister c7eee695ce Remove references to XML shaders. 2014-05-25 23:40:14 +02:00
Themaister addba80c3b Rewrite DSP plugin interface. 2014-05-20 12:28:33 +02:00
twinaphex 216a3e4ea7 (QNX) Change __BLACKBERRY_QNX__ define to __QNX__ 2014-05-20 02:48:11 +02:00
twinaphex 701a805737 (Playbook) Fixes Playbook build 2014-05-20 02:33:09 +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
twinaphex d7c1ea5ece Revert "(RARCH_CONSOLE) Can finally get rid of global_driver_init"
Spoke too soon - we really need to refactor this mess so that
consoles, mobile and PC all follow the SAME basic initing/deiniting
structure. This kind of backwardsness is going to scale very, very
badly.

This reverts commit 540fad51a6.
2014-05-10 03:33:11 +02:00
Jean-André Santoni 22a5e07ead Merge branch 'master' of https://github.com/libretro/RetroArch 2014-05-09 16:24:36 +02:00
twinaphex 540fad51a6 (RARCH_CONSOLE) Can finally get rid of global_driver_init 2014-05-09 06:45:03 +02:00
Jean-André Santoni 7dda9f0b00 Lakka menu display and icons 2014-05-08 01:12:51 +07:00
twinaphex cb53d65fc3 Compile with HAVE_BUILTIN_FILTERS for Android - and some C90 build
fixes for filters. Note/FIXME: We need to get rid of the complex.h
dependency in the equalizer plugin
2014-05-03 04:59:35 +02:00
twinaphex 08965cfa0d Change HAVE_FFMPEG ifdefs into HAVE_RECORD - recording will get
a proper interface soon so there can be multiple implementations
instead of just ffmpeg
2014-05-03 00:21:07 +02:00
twinaphex f9cff5b00d Move extern references to built-in filters to driver.h 2014-04-30 02:38:13 +02:00
twinaphex 8321506b39 (MSVC) Build fixes 2014-04-29 23:02:07 +02:00
twinaphex 8c79314066 DSP Filters work now on non-HAVEDYLIB targets 2014-04-29 22:12:35 +02:00
twinaphex cdc60da07f (DSP Filters) Add code for HAVE_BUILTIN_FILTERS 2014-04-29 21:56:50 +02:00
twinaphex 1bf9a43db6 (DSP Filters) Add SIMD detection to DSP Filter API 2014-04-29 18:38:23 +02:00
twinaphex 669ebbabf6 (DSP filters) Bump up ABI of DSP Filter API to version 6 - make it
more like SoftFilters API
2014-04-29 18:24:49 +02:00
twinaphex e2eb36ce22 rarch_init_dsp_filter and rarch_deinit_dsp_filter now get called
by non-HAVE_DYLIB targets
2014-04-28 06:52:01 +02:00
twinaphex 6f13028aba (Audio DSP) Make it no longer dependent on HAVE_DYLIB being
defined
2014-04-28 06:45:50 +02:00
twinaphex 8a77674efc Cleanup rarch_deinit_dsp_filter 2014-04-28 06:35:40 +02:00
twinaphex 9f3ffa077d (Menu) Add DSP filter options 2014-04-27 18:15:41 +02:00
twinaphex 8d6a7dbe1f (Console) Bakes in filters now for ifndef HAVE_DYLIB targets 2014-04-16 03:33:10 +02:00
twinaphex 45c917afa4 Compile in filters for console ports (HAVE_DYLIB not defined in
Griffin)
2014-04-16 02:09:09 +02:00
Themaister d0a6f45565 Use modified width/height as filter buffer size.
Fixes scale2x segfault.
2014-04-15 19:36:41 +02:00
Themaister 4913683462 Small filter fixes. 2014-04-15 12:22:01 +02:00
twinaphex b01754e63b rarch_init_filter - pass color format as param instead of a bool indicating
if color format is of 32bit color
2014-04-15 05:13:56 +02:00
Themaister 4b97de0c9e Replace filter cruft with new stuff. 2014-04-15 00:03:55 +02:00
twinaphex 552c0ab495 use public scope for init_filter and deinit_filter 2014-04-13 18:29:57 +02:00
twinaphex e779681528 Add Privacy Options 2014-04-06 22:59:16 +02:00
Themaister ab2040a100 Avoid some confusing opaqueness.
First argument of menu_ctx_init_first must always be const menu_ctx_driver_t**.
2014-04-01 17:42:00 +02:00
twinaphex aadb940da8 Move menu_context.c code into driver.c 2014-04-01 04:12:41 +02:00
twinaphex 3f3af129de (XDK) Build fix #2 2014-03-07 20:21:12 +01:00
Themaister d98af82baf Honor ident param. 2014-02-25 09:56:39 +01:00
Themaister 21c383f77a Add initial SET_SYSTEM_AV_INFO environ. 2014-02-20 22:48:31 +01:00
aliaspider 650adef8da (PSP) added audio support 2014-02-17 14:26:03 +01:00
twinaphex ff6bd795cd (PSP) Video driver was not hooked up 2014-02-12 17:18:45 +01:00
Themaister 4653174cf5 Don't reset volume settings on driver reinit. 2014-02-08 16:24:21 +01:00
Tobias Jakobi 7cdb08b804 Add lima video driver
Documentation is provided in README-lima.
2014-01-26 04:43:00 +01:00
twinaphex f7915ab55e Change param for get_sensor_input 2014-01-20 14:59:06 +01:00
twinaphex 460670f074 Move sensor value reading to retro_sensor_interface 2014-01-20 14:52:53 +01:00
twinaphex 0a15a17d44 Update years on all license headers 2014-01-01 01:50:59 +01:00
twinaphex 17af6a0465 (D3D) Rename video_d3d9 to video_d3d 2014-01-01 01:09:31 +01:00
Themaister 65aafdc2f4 Fix warning. 2013-12-24 23:38:25 +01:00
Themaister 8a81ee856c Some Win32 fixes. 2013-12-24 14:10:18 +01:00
Toad King ccc797cadb don't reset keybinds on driver init 2013-12-23 20:05:09 -05:00
Themaister 188a233ec8 Add lifetime status callbacks to location interface. 2013-12-20 08:44:38 +01:00
twinaphex da6e360e49 (Location) Implement horizontal and vertical accuracy - Android's
location API only provides horizontal API but iOS/OSX API supports
both horizontal and vertical. Maybe consider implementing vertical
accuracy for Android by hand later
2013-12-19 17:36:27 +01:00
twinaphex 2f1327bf3e (Apple)location driver is baked in now for OSX too 2013-12-19 17:10:03 +01:00
twinaphex f0aa0f99fd (Location) Reimplement some parts of the location interface - get_latitude
and get_longitude are gone now in place of get_position. Basically,
from C land we basically do a poll-style queries, but on the
implementation side (ie. Android/iOS/OSX) - they all use callback-based
location updates. So we simply check in the poll function (get_position)
whether position has changed, and if so, update the pointer values and
return true - if not, set them to 0 and return false.
2013-12-19 15:47:47 +01:00
Themaister 855cb54def Some cleanups to location interface.
Avoid three redundant fields in struct.
Use unsigned instead of int for argument for API consistency.
2013-12-19 10:15:55 +01:00
twinaphex 031a9d05be (Location) Environ GET_LOCATION_INTERFACE should be implemented now 2013-12-19 05:51:25 +01:00
twinaphex e983aa4c35 (Location) Implement stub Android location driver - will still need
a couple of functions filled in
2013-12-19 03:37:26 +01:00
twinaphex ccd2246331 (Apple) Build fixes 2013-12-19 03:16:13 +01:00
twinaphex dfe42f4026 (Location) Add g_extern.system handle to retro_location_callback 2013-12-19 02:54:46 +01:00
twinaphex f29d590973 (Apple) Add location driver for Apple to location_drivers array 2013-12-19 02:41:48 +01:00
twinaphex 5f33a6b373 (Apple) Implement HAVE_LOCATION for OSX/iOS 2013-12-19 02:39:38 +01:00
twinaphex 742f85eafc Add HAVE_LOCATION - still need to write frontend drivers now for
location
2013-12-19 01:51:51 +01:00
twinaphex 38d785984f Add RETRO_ENVIRONMENT_GET_PERF_INTERFACE to libretro.h 2013-12-17 19:10:40 +01:00
Themaister c21310b261 Start adding udev input driver. 2013-12-07 14:13:40 +01:00
twinaphex cc7cda7252 (iOS) Skeleton camera driver 2013-12-01 14:41:18 +01:00
twinaphex de1bae69c9 (Android) Add skeleton camera driver 2013-11-17 19:47:37 +01:00
Themaister 271939875a Update libretro camera API.
Need initialized/deinitialized callbacks to properly
handle driver reinit.
2013-11-16 17:54:18 +01:00
Squarepusher 4ab77e8405 Merge pull request #385 from libretro/webcam-test
Emscripten webcam driver
2013-11-13 01:25:19 -08:00
ToadKing aaff8f2648 move prototype camera interface to libretro interface - GL texture only for now 2013-11-12 19:48:36 -05:00
twinaphex aec049c803 (OSK) Refactor - (Onscreen Keyboard) - PS3-only backend for now -
I will make an overlay-based backend soon too for all other platforms
2013-11-13 00:27:31 +01:00
Themaister dfff94e5a0 Rework camera interface.
Hook up a more proper interface for libretro. Still very experimental.
2013-11-12 16:02:26 +01:00
twinaphex 6a9bc1bfa4 (Menu) Show camera driver inside 'Drivers' category 2013-11-11 15:39:46 +01:00
twinaphex f8d44c6e60 (Camera) Add camera driver init/deinit when HAVE_CAMERA is defined 2013-11-11 14:26:57 +01:00
Themaister ae07e75e7c Hook up sensors API in libretro.
There are still many FIXMEs to be resolved before the interface
can lose its experimental status.
2013-11-03 12:06:14 +01:00
Themaister 970c973540 global_uninit_drivers() should come after main deinit.
Actually free video driver in global_uninit.
2013-11-03 10:42:05 +01:00
twinaphex aabbf835fc global_init_drivers - remove obsolete comment 2013-11-02 05:30:05 +01:00
twinaphex 71a23ac18e Slim down global_init_drivers - we can now get rid of the 'start'
function
2013-11-01 21:10:42 +01:00
twinaphex 727dc76db8 (Console/Android) Init input driver from context driver/graphics
driver from now on - just like PC - input driver initing can be
hoisted out of global_drivers_init that way
2013-11-01 16:33:32 +01:00
Themaister f2e85f9b9b Clean up driver prev/next/find a bit. 2013-10-30 23:37:46 +01:00
twinaphex aab3f93f56 Fix driver next/previous switching 2013-10-30 17:50:43 +01:00
twinaphex b2d1fe66b3 (RGUI) Can now change drivers from RGUI - you need to restart
for changes to take effect
2013-10-30 17:06:50 +01:00
Themaister 9be4fe705b viewport_info can be NULL. Check for this. 2013-10-26 18:51:00 +02:00
Themaister fc5ba8f79a Use configured aspect ratio to set windowed size.
Fixes some cases where core aspect is used and aspect_ratio_auto isn't set.
2013-10-26 18:31:48 +02:00
twinaphex d2c87e3039 Convert most C99-style for loop initial declarations to C89-compliant
ones
2013-10-22 15:08:17 +02:00
Themaister d215ec4ea8 Fix potential bug when HW render is used.
If e.g. D3D9 driver was used find_video_driver() would override GL
driver on reinit. Avoid this by doing this logic in find_video_driver()
instead.
2013-10-07 16:26:06 +02:00
twinaphex c052b2fb9c (RARCH_CONSOLE) Some cleanups 2013-10-06 23:14:41 +02:00
Themaister 3b97cdfdac Add threaded video option. 2013-10-06 17:23:49 +02:00
twinaphex 0798431175 (360) Fix build. 360 port works again 2013-09-29 20:49:04 +02:00
Themaister ae0d1ff282 Fix bug with use_float.
If audio driver changed from pulse to alsa via config change,
audio would be broken as use_float would be set to true.
2013-09-27 00:19:03 +02:00
Themaister c7db4aff64 Support variable strength for rumble motors. 2013-09-26 12:55:05 +02:00
Themaister 8b1ac3bc9e Add rumble tests to libretro-test. 2013-09-25 23:58:02 +02:00
Themaister a01ef18f80 Add RETRO_ENVIRONMENT_GET_RUMBLE_INTERFACE. 2013-09-25 23:21:32 +02:00
Themaister 841d8fa8e1 Add video_rotation.
Replaces g_extern.console.screen.orientation.
Rotation semantics have slightly changed to be more composable.
The rotation is now video_rotation + rotation set by cores themselves
(if allowed).

The config is now also saved properly.
2013-09-22 11:45:04 +02:00
Themaister 38ec55573c Rework SET_AUDIO_CALLBACK.
When disabling audio and/or muting, the core has no way
of knowing this, causing potential issues in a threaded mixer.

This environ is not used by any public core to my knowledge so the old
API has been removed and replaced with a change to environment number
(20 -> 22).
2013-09-14 17:28:09 +02:00
Hans-Kristian Arntzen 7d90ff4011 Merge pull request #303 from libretro/emscripten
Emscripten/Javascript port
2013-09-11 01:01:29 -07:00
ToadKing a09dda3a9d [EMSCRIPTEN] add custom input driver, removes SDL dependency + adds mouse support 2013-09-10 20:21:48 -04:00
meancoot 149a0f37d0 (Overlay Analog) Coding style fixes 2013-09-05 18:19:07 -04:00
ToadKing 04be8cbee2 new audio core, RWebAudio. Glitchy, but works well, even with requestAnimationFrame callbacks 2013-08-28 00:03:25 -04:00
ToadKing 87844cc486 Merge branch 'master' of https://github.com/libretro/RetroArch into emscripten
Conflicts:
	gfx/gl.c
2013-08-25 15:37:16 -04:00
Themaister e8271031b6 Stop/start audio driver on mute. 2013-08-11 01:09:10 +02:00
Themaister a543b5da74 Fix threaded audio race conditions. 2013-08-11 01:07:59 +02:00
Themaister f4a23115c2 Begin adding AUDIO_CALLBACK/FRAME_TIME_CALLBACK. 2013-08-11 01:05:33 +02:00
Themaister 3dd5cd39c4 Add cache_context/destroy notification. 2013-08-11 00:55:05 +02:00
Themaister b33af9d6b6 Fix some context_reset() calls being missed. 2013-08-11 00:53:46 +02:00
Themaister e18af77412 Add path to cache GL context on reinit.
If successful, can avoid libretro GL reset context callback being
called.
2013-08-11 00:53:19 +02:00
Themaister b268c2957c Don't spam errors when in RGUI and threaded video. 2013-08-10 23:58:56 +02:00
twinaphex f7622d3294 Add OMAP graphics driver (Tobias Jakobi) 2013-07-28 18:37:31 +02:00
ToadKing 49398698b5 initial emscripten port (no audio/files, input broken) 2013-07-17 20:26:01 -04:00
meancoot 78acc25931 (Apple) Add keyboard input support for OSX 2013-07-07 16:01:58 -04:00
twinaphex 308e64094b (ALSA QSA) Add preliminary ALSA QSA driver based on CatalystG's
audio driver for PCSX ReARMed - still broken - exits at 'Error:
Channel Parameter Error - no such process'
2013-06-21 18:56:39 +02:00
Themaister d5a8d3bfb0 Can update video refresh rate from RGUI. 2013-06-07 14:34:09 +02:00
Themaister b0b6e65ab6 Add monitor refresh rate monitor in RGUI.
Doesn't support updating refresh rate setting yet.
2013-06-07 14:10:42 +02:00
Themaister cee493fb18 Make integer scale robust against rounding errors. 2013-06-05 21:48:52 +02:00
Themaister ac6c576d29 Drop dependency on delay_timer in RGUI. 2013-04-26 23:52:29 +02:00
Themaister 9a3875d99a Don't hardcode new delay timers in RGUI.
Delay timers are reset in driver.c.
2013-04-26 20:16:58 +02:00
ToadKing 73e4adf8dc adjust delay timers when resetting frame count 2013-04-26 13:12:45 -04:00
twinaphex 34619412bc (RARCH_CONSOLE) Get rid of video_stop_func 2013-04-24 16:08:18 +02:00
Themaister 3c31d6118a Fix video_poke check causing SDL crash. 2013-04-21 23:17:34 +02:00
Themaister be01a0ea59 Refactor aspect ratio handling.
Rework aspect ratio handling in RGUI.
Custom viewports work on PC. Ensure that aspect_ratio_idx persist
through reentrancy. Change ASPECT_RATIO_AUTO to ASPECT_RATIO_SQUARE to
better signal that it's the square pixel option.

Add ASPECT_RATIO_CONFIG as an option to use config file defined aspect
ratio.
2013-04-20 10:56:04 +02:00
Themaister db183b5d97 Fix shader dir crash if folder doesn't exist. 2013-04-16 12:01:50 +02:00
Themaister c7c952113a Reset frame_counter on driver reinit.
Avoids "Unnamed Window" for 3-4 secs on restart.
2013-04-16 00:57:46 +02:00
Themaister c9fed3c6e9 More stringent pointer checking. 2013-04-14 12:24:16 +02:00
Themaister 36ea8f9cf6 Fix logic bug in driver_set_nonblock_state. 2013-04-14 11:52:15 +02:00
Themaister f968ee6527 Refactor nonblock states.
Preserve nonblock state better across reinits, etc.
Try to keep vsync in RGUI.
2013-04-14 00:56:55 +02:00
Themaister 8fee69776f Disable threaded driver with HW render.
Won't work so simply.
2013-03-30 21:20:26 +01:00
OV2 4c4bbf3cf0 Fix build without HAVE_FBO 2013-03-30 14:48:33 +01:00
Themaister 4bcc566afb Fix some possible segfaults with HW render. 2013-03-28 12:27:40 +01:00
Themaister 1cececac18 Add get_proc_address.
Render something "real" in GL.
2013-03-28 01:11:32 +01:00
Themaister af40f3e9b8 Add initial GL direct rendering test. 2013-03-27 16:15:15 +01:00
CatalystG 1e58421c84 (BlackBerry) Get input overlay to show when booting to RGUI 2013-03-24 20:42:09 -04:00
twinaphex 82329cf097 (Blackberry) Starts up in RGUI mode now - should (hopefully) allow
for dynamic changing of libretro core and selection of ROM instead
of hardcoded paths.
2013-03-24 01:00:00 +01:00
CatalystG be9a8e63f4 Add input driver for QNX. Copy null driver for now.
Conflicts:
	griffin/griffin.c
2013-03-19 19:26:36 -04: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
twinaphex f028a8555e Revert "Move set_keybinds autoconfiguration (that is done on every console"
This reverts commit c26653fca8.
2013-03-16 17:51:37 +01:00
twinaphex b59c262971 Revert "Move console 'set default binds' and 'set analog stick' default"
This reverts commit 5f2a808042.
2013-03-16 17:51:00 +01:00
twinaphex 5f2a808042 Move console 'set default binds' and 'set analog stick' default
set_keybindings to global_init_drivers
2013-03-16 17:44:24 +01:00
twinaphex c26653fca8 Move set_keybinds autoconfiguration (that is done on every console
port) to driver.c - reducing lots of duplicate code
2013-03-16 17:24:24 +01:00
twinaphex 3bc487be87 Merge branch 'ios' of git://github.com/meancoot/RetroArch 2013-03-15 20:05:15 +01:00
twinaphex 24a4618f88 (Minizip) Don't go through ioapi's function pointers - negates
dependency on ioapi.c
(driver.c) ifdef start/stop() calls with RARCH_CONSOLE for now
2013-03-13 05:06:26 +01:00
twinaphex c28bb3a3fd Move init_console_drivers and uninit_console_drivers to driver.c
and rename them global_init_drivers and global_unit_drivers -
we'll need this for Blackberry, starting RetroArch with RGUI
at startup AND consoles
2013-03-13 04:16:56 +01:00
meancoot 9fadca2a54 Merge branch 'master' of https://github.com/Themaister/RetroArch into ios 2013-03-09 20:09:32 -05:00
Themaister e1a545b695 Explicitly clear out poke interface to NULL. 2013-03-10 01:20:16 +01:00
Themaister 2681f14032 Add video_poke_interface_t. 2013-03-10 01:17:17 +01:00
meancoot 06bb6b7840 Merge branch 'master' of https://github.com/Themaister/RetroArch into ios 2013-02-21 22:18:14 -05:00
Themaister 76bf41188a Add video_threaded option to Android. 2013-02-17 00:26:17 +01:00
Themaister 843d079002 Begin adding threaded video driver wrapper. 2013-02-16 02:48:08 +01:00
meancoot 5d139b185b Merge branch 'master' of https://github.com/Themaister/RetroArch into ios 2013-02-15 18:54:57 -05:00
Themaister 11d919b9e8 Fix downsampling for SINC. 2013-02-13 21:55:58 +01:00
meancoot 19fb2fe8f4 Merge branch 'master' of https://github.com/Themaister/RetroArch into ios 2013-02-11 17:13:31 -05:00
Themaister 5632836446 Report how many frames is needed to measure FPS. 2013-02-10 14:34:03 +01:00
Themaister 3b5eedeab5 Measure frame times at frame granularity. 2013-02-10 01:42:56 +01:00
Themaister cb1c3b5943 Add very specific debug logging for FPS measurements. 2013-02-10 00:02:18 +01:00
Themaister 0c460c524d Disregard first measurement for statistics. 2013-02-09 23:26:24 +01:00
Themaister d33d2e9f0c Make resamplers more modular. 2013-02-08 11:49:51 +01:00
meancoot 7e4e028fc8 ios: Add a simple input driver draft; tracks only one touch for now. 2013-02-06 18:23:11 -05:00
Themaister 1df86a722a Rework FPS measurement. 2013-02-05 12:51:12 +01:00
Themaister 27d57b789a Add basic FPS measurement routines. 2013-02-04 21:46:56 +01:00
Themaister 7ab8eaec02 Use NEON conditionally for sample conversions. 2013-01-24 18:37:42 +01:00
Themaister 019959a012 Add audio buffer statistics measurement. 2013-01-18 10:38:43 +01:00
twinaphex 1b398a1941 (PSP) comment out non-working video driver for now - use null video
for now
2013-01-10 04:22:42 +01:00
twinaphex 589b5eefdb (360) 360 audio driver now goes through the same Xaudio driver
as PC
2013-01-09 22:04:28 +01:00
twinaphex 403a087926 Null drivers have to be explicitly compiled in now -
otherwise they are ommitted
2013-01-09 05:54:48 +01:00
Themaister 31dc256e19 Do not allow audio to be initialized twice. 2013-01-08 13:23:15 +01:00
Themaister 235244e438 Use safer checking when dealing with FP. 2013-01-08 12:42:28 +01:00
ToadKing 1dc08b9a6d (GX) work with new console code 2013-01-07 23:48:21 -05:00
twinaphex c76ae2a8d1 (RARCH_CONSOLE) Use init_drivers_pre once at startup of console
ports - use driver.video, driver.input as much as possible from
then instead of explicit platform-specific drivers
2013-01-07 18:18:44 +01:00
twinaphex 9251eebe13 (RARCH_CONSOLE) Make find_video_driver public in scope and use
it in console ports
2013-01-07 17:48:45 +01:00
twinaphex 1cae4de653 (Android) More elegant way of setting refresh rate 2013-01-05 06:02:02 +01:00
ToadKing fd0bb1b3ee make alsathread a seperate audio driver 2013-01-04 14:58:34 -05:00
Themaister 276b588217 Add custom xml parser. Use as fallback. 2013-01-02 15:18:42 +01:00
Themaister 0b4cf2d053 Update license headers to 2013. 2013-01-01 01:41:15 +01:00
Themaister e3378c219c Use crude ref-counting for driver handles. 2012-12-25 23:18:19 +01:00
Themaister e4e0d9c72d Reset driver.* handles on driver reinit. 2012-12-25 00:01:06 +01:00
twinaphex e8a57f21cd (Android) Fix - restore state functionality broke again due to
'refactor' in driver.c - this does not work for re-entrancy - please
consult with me
2012-12-24 18:06:51 +01:00
Themaister 225647d0e3 Add public function to set refresh rate of monitor. 2012-12-23 19:05:20 +01:00
Themaister 35bf5c82c1 Make OVERLAY optional. 2012-12-23 18:39:01 +01:00
Themaister 9056946079 Merge branch 'master' into overlay 2012-12-22 11:38:18 +01:00
Themaister 6bb2349833 Kill off external driver plug interfaces.
These are too much work to maintain, and aren't really all
that useful.
2012-12-22 11:37:15 +01:00
Themaister ca9f081d27 Make input overlay configurable. 2012-12-20 20:23:53 +01:00