Commit Graph

528 Commits

Author SHA1 Message Date
twinaphex
3892c8326d Use macro functions to hide away some of the ugliness 2014-09-17 07:38:49 +02:00
twinaphex
191f0b6383 Move input_key_pressed to input_common.h 2014-09-16 07:02:57 +02:00
twinaphex
a09e04f679 Split up driver_menu.h into three separate header files -
for menu display API, menu backend API, and menu driver general API
2014-09-16 00:52:07 +02: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
twinaphex
75d2e13dcb Make drivers non-const 2014-09-11 07:06:20 +02:00
Jean-André Santoni
5e433abf8b (GLUI) GL based RGUI display driver clone 2014-09-11 04:07:07 +02:00
twinaphex
aade2b45ef Style / indent nits 2014-09-09 05:24:32 +02:00
twinaphex
9d783b6627 Style cleanups 2014-09-07 05:47:18 +02: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
5c2006c072 Remove extraneous elses 2014-08-27 02:06:39 +02:00
twinaphex
9287d6363f Remove unused keybind_set_id 2014-08-27 01:04:19 +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
3cfe954b74 Combine all driver_index* functions 2014-08-26 20:32:48 +02:00
twinaphex
a468d9e860 Remove unused menu_ctx_find_driver 2014-08-26 20:18:53 +02:00
twinaphex
6a8ccc3844 Move DEFAULT_SHADER_TYPE from driver.h to gfx/shader_common.h 2014-08-26 19:48:56 +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
a3e8a18d8f Get rid of CONSOLE_MENU enums 2014-08-15 20:54:51 +02:00
twinaphex
d5de35935c Get rid of driver_funcs.h 2014-08-15 20:53:49 +02:00
twinaphex
0966d384d8 (OSK) Get rid of HAVE_OSK ifdef 2014-08-14 06:40:33 +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
12c0311f04 (Input) Get rid of unused devices_size 2014-08-14 00:56:40 +02:00
twinaphex
fab7792058 Get rid of set_keybinds - no longer used 2014-08-14 00:49:28 +02:00
Higor Eurípedes
b6df19dffb (SDL*) Merge input drivers 2014-08-11 19:47:30 -03: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
SuperrSonic
ba0fba655e added viwidth stuff 2014-08-10 16:45:55 -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
80a19ff0fd (Wayland) Adding preliminary work by maister - input hookup still
missing
2014-08-09 21:35:27 +02:00
twinaphex
e110bd90f5 Refactor DSP filter init/deinit 2014-08-02 13:40:38 +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
Themaister
cdc46ae512 Block libretro input when ENABLE_HOTKEY is held. 2014-07-11 00:26:50 +02:00
Themaister
cce0ec63a4 Move menu driver structs to its own header. 2014-06-17 16:49:26 +02:00
Themaister
57dffba9ba De-opaque file_list. 2014-06-17 16:46:30 +02:00
Themaister
76292f873a De-opaque shader_parse. 2014-06-17 16:41:06 +02:00
twinaphex
a7cb3e22a7 (Menu) Replace some more RGUI strings 2014-06-10 02:44:19 +02:00
twinaphex
966db762cf (Menu) More replacement of namespace prefix 'rgui' with 'menu' 2014-06-10 02:06:10 +02:00
twinaphex
639e6dbe33 (Menu) Make distinction between menu and RGUI more clear - RGUI is just
the display layer driver now
2014-06-10 01:42:26 +02:00
twinaphex
974af4429a (Menu) Set RGUI_MAX_BUTTONS to 219 by default - maister - tell me if this
is alright
2014-06-10 01:33:44 +02:00
Themaister
64cc0efefe Parametrize drop shadows. 2014-06-08 14:08:26 +02:00
Themaister
54c7521bf8 Drop useless win_width/height arguments to font init. 2014-06-08 14:08:26 +02:00
Themaister
e545d695ec Begin big rewrite of GL/raster font rendering path. 2014-06-08 14:08:26 +02:00
Toad King
c09c5c1109 more android input changes. rebinding from RGUI works now. need to re-add autodetect and special behavior for some controllers 2014-06-06 23:41:09 -04:00
twinaphex
c4e1289c9a (Win32) Build fix 2014-06-01 03:00:31 +02:00
twinaphex
a40e17a2c1 (PS3) Compile fix 2014-06-01 00:24:35 +02:00
Themaister
79bd141839 Don't pass useless argument to set_texture().
Be more defensive in rmenu texture upload.
2014-06-01 00:20:54 +02:00
twinaphex
ea49c5ecae Revert "(RMenu) Take out menu_texture_inited bool"
This reverts commit 36820347b3.
2014-05-31 23:47:35 +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
36820347b3 (RMenu) Take out menu_texture_inited bool 2014-05-31 23:01:20 +02:00
twinaphex
deb737e3c5 Start getting rid of continuous grabbing of pointer from driver.menu
and instead use driver.menu directly from the menu code everywhere
- starting with menu_common - backend and display drivers next
2014-05-31 21:45:16 +02:00
twinaphex
b4256ac0ed Cleanup menu_common.h 2014-05-31 16:48:07 +02:00
twinaphex
6307202a6d (Menu) render_messagebox/render/frame functions from menu_ctx no longer
get a rgui handle passed to them
2014-05-30 21:51:12 +02:00
twinaphex
68c9a6003c (Menu) Prevent another few segfaults when trying to 'default'
softfilter - have to continually grab pointer back to driver.menu
after some function occurred that could have changed driver.menu
2014-05-30 21:10:15 +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
779c467191 (Menu) Get rid of passing rgui pointer around to most functions in
menu backend. NOTE: Applying filters seems to be broken on PC
right now, investigate
2014-05-30 20:23:20 +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
c020f362b6 Remove hacky restart function in video interface 2014-05-30 17:57:21 +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
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
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
49660c9bc0 (Win) Build fix 2014-05-28 03:38:52 +02:00
twinaphex
5da884036e (PS3) Starts to somewhat get back to booting - still a lot of
breakage to go through
2014-05-27 21:38:30 +02:00
Twinaphex
a56d57c615 Merge pull request #706 from libretro/shader-parameter
Shader parameter
2014-05-27 16:28:06 +02:00
twinaphex
e69b9c4f8a (Menu) Initialize menu driver during init_drivers_pre 2014-05-26 23:18:49 +02:00
Themaister
b0e014adc6 Expose currently selected shader via poke interface. 2014-05-26 18:47:49 +02:00
twinaphex
9e1dfbef29 Split up defer core functionality to menu_common and create
callbacks for menu backend context-specific operations
2014-05-22 03:12:56 +02:00
Themaister
7aaa0c254f Add builtin crap for DSP plugs. 2014-05-20 14:21:29 +02:00
Themaister
b498476531 Remove broken DSP plugs.
They will all have to be properly rewritten for new interface.
2014-05-20 12:38:01 +02:00
Themaister
79f4ed34ba Rename rarch_dsp.h. 2014-05-20 12:30:50 +02:00
Themaister
addba80c3b Rewrite DSP plugin interface. 2014-05-20 12:28:33 +02:00
twinaphex
8821a54aba put frontend_ctx variable into driver struct 2014-05-13 20:23:36 +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
twinaphex
f656336b7f (Lakka) Use strlcpy/strlcat
(Menu) Abstract menu_init_core_info - we can have different
implementations of this per menu drivers
2014-05-09 21:00:50 +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
twinaphex
0454ac623e (Menu) Move 'rgui' global variable to 'driver' struct 2014-05-09 05:47:32 +02:00
Jean-André Santoni
7dda9f0b00 Lakka menu display and icons 2014-05-08 01:12:51 +07:00
twinaphex
3b6f408a41 (SoftFilters) Add Phosphor2x 2014-05-03 02:26:04 +02:00
twinaphex
d56f1e0104 (SoftFilters) Add LQ2x 2014-05-02 21:09:59 +02:00
twinaphex
01ceaa9d27 (Griffin) Bake in Blargg NTSC NES/SNES filters into Griffin now.
All console ports should have them now
2014-05-01 06:09:06 +02:00
twinaphex
f9cff5b00d Move extern references to built-in filters to driver.h 2014-04-30 02:38:13 +02:00
twinaphex
cdc60da07f (DSP Filters) Add code for HAVE_BUILTIN_FILTERS 2014-04-29 21:56:50 +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
9f3ffa077d (Menu) Add DSP filter options 2014-04-27 18:15:41 +02:00
twinaphex
6f05cce0de Get rid of menu_common_settings.c - add remaining public functions to
menu backend interface
2014-04-26 02:40:38 +02:00
twinaphex
3d8d807e6b Refactor a bunch of menu code - menu 'settings' can now be implemented
per-menu context
2014-04-26 01:54:15 +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
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
twinaphex
9dfcded389 (Menu) Refactor menu code -move backend menu code to separate driver 2014-04-14 02:32:54 +02:00
twinaphex
dcebbf0202 (XUI) Move file list code to XUI 2014-04-14 00:09:52 +02:00
twinaphex
9bc6e99104 Clean up menu_navigation 2014-04-13 23:42:04 +02:00
twinaphex
552c0ab495 use public scope for init_filter and deinit_filter 2014-04-13 18:29:57 +02:00
LLeny
b528e8df1c Android - Samsung Game Pad EI-GP20 2014-04-04 14:17:39 +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
a40e942280 Add frame function to menu_ctx_driver_t struct 2014-04-01 04:45:00 +02:00
twinaphex
6064511cc2 Move menu_ctx variable over to driver struct 2014-04-01 04:03:55 +02:00
twinaphex
d23d56c988 (GX) Add experimental libsicksaxis support - doesn't work properly
right now so not compiled in
2014-02-26 23:07:16 +01:00
twinaphex
fd7f4d45cd Move image files to gfx/image/ 2014-02-25 21:24:15 +01:00
twinaphex
4b1438e4b2 (Menu) Add audio resampler selection to 'Drivers' section 2014-02-25 03:23:50 +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
896cc6a375 (PSP) Implement autodetect_enable 2014-02-16 15:36:01 +01:00
twinaphex
a5eed07afc (Sensor) Windows build fix 2014-02-01 21:08:10 +01:00
Tobias Jakobi
7cdb08b804 Add lima video driver
Documentation is provided in README-lima.
2014-01-26 04:43:00 +01:00
twinaphex
9f892b97e9 (XDK1) Fix build 2014-01-22 00:50:46 +01:00
twinaphex
460670f074 Move sensor value reading to retro_sensor_interface 2014-01-20 14:52:53 +01:00
Themaister
f57a1aa032 Add support for mapping analogs to D-pad again.
Use a cleaner approach which can feasibly work on all platforms.
Uses input_push/pop_analod_dpad to modify the joyaxis field before
polling input. This way, the RetroPad D-pad binds can inherit the
joyaxis fields from ANALOG_LEFT_X_PLUS and friends.

Also add support for the field in RGUI and saves settings.
2014-01-08 17:31:14 +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
132c3c46f7 Use struct texture_image instead of video_overlay_image. 2013-12-31 19:05:16 +01:00
twinaphex
75a6db27b4 (GX/PS3) Reimplement menu binds 2013-12-26 20:11:33 +01:00
Toad King
54246497a8 [GX] add default binds for axises 2013-12-23 19:46:25 -05: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
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
d092413d63 (Apple/Location) Build fixes 2013-12-19 03:41:28 +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
fd5a3fa9da (Location) Fix derp 2013-12-19 02:44:21 +01:00
twinaphex
f29d590973 (Apple) Add location driver for Apple to location_drivers array 2013-12-19 02:41:48 +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
bfbebaf041 (Android) Add JXD S5110B Skelrom to input autodetect 2013-12-16 10:52:50 +01:00
Themaister
84c93ef94a Add experimental RGUI keyboard search feature.
Type '/' to start search, then type search string (case sensitive for
now due to strcasestr being GNU ext). When done, type return.
2013-12-09 16:18:58 +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
2b01f0a33e (Android) Add JXD S7800B autodetected controls 2013-11-29 15:10:39 +01:00
twinaphex
de1bae69c9 (Android) Add skeleton camera driver 2013-11-17 19:47:37 +01:00
Themaister
6d6e964672 Fixup CXX_BUILD.
Cleans lots of sign-related warnings as well.
2013-11-16 17:31:49 +01:00
twinaphex
9558a47ada (PS3 RGUI) Working OSK input 2013-11-15 23:19:44 +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
twinaphex
8ce8051654 (OSK PS3) Refactor OSK PS3 input 2013-11-12 17:16:30 +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
c107b06a76 Add RETRO_ENVIRONMENT_SET_CAMERA_RETRIEVE 2013-11-12 12:00:57 +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
70fcf31fdd Use bool for ready. 2013-11-10 17:47:39 +01:00
ToadKing
a6024c4efa add width and height retrieval to camera driver 2013-11-09 23:06:58 -05:00
twinaphex
fc65ae7709 (Camera) Add preliminary camera interface and preliminary
Video4Linux 2 camera driver implementation - ToadKing can try
to hook into this driver interface now for his WebGL camera driver
2013-11-10 03:16:03 +01:00
twinaphex
cc78199051 (Menu) Cut down on some HAVE_RMENU ifdefs 2013-11-08 15:15:53 +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
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
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