Commit Graph

972 Commits

Author SHA1 Message Date
twinaphex b2608d8cf6 Reduce ifdefs 2017-01-05 08:14:56 +01:00
twinaphex b13d069578 - Silence Coverity warning in platform_linux.c
- Don't do settings lookup when calling runloop_msg_queue_push
2017-01-03 18:47:34 +01:00
twinaphex faf939856b Rewrite task_queue.c - get rid of messy internal Rarch code 2017-01-03 18:27:09 +01:00
Alcaro f62ad35238 Shut up some warnings 2017-01-02 02:16:29 +01:00
twinaphex dd8cae38ad Simplify RUNLOOP_CTL_MESSAGE_QUEUE_PULL 2016-12-23 00:00:40 +01:00
twinaphex 77e5cdbfde Revert "Rename runloop_msg_queue_push to video_driver_msg_queue_push"
This reverts commit ad7386913c.
2016-12-22 23:36:11 +01:00
twinaphex 0d8f7b64f5 Remove some RUNLOOP_CTL actions 2016-12-22 19:21:42 +01:00
twinaphex ad7386913c Rename runloop_msg_queue_push to video_driver_msg_queue_push
and move code to video_driver.c
2016-12-22 13:15:02 +01:00
Gregor Richards 45d732a014 New sync system
The idea:
   * Use a fixed number of delay_frames (eventually to be fixed at 120,
     currently still uses the config variable, 0 will still be an option)
   * Determine how long it takes to simulate a frame.
   * Stall only if resimulating the intervening frames would be
     sufficiently annoying (currently fixed at three frames worth of
     time)

Because clients always try to catch up, the actual frame delay works out
automatically to be minimally zero and maximally the latency. If one
client is underpowered but the other is fine, the powerful one will
automatically take up the slack. Seems like the most reasonable system.
2016-12-18 19:28:43 -05:00
Gregor Richards bade067d9a Support for catching up if the netplay peer is ahead of us. 2016-12-18 19:28:43 -05:00
Gregor Richards 262d77546b Adding game/watch key
Adding a key to toggle between playing and spectating. This key takes
the place of the previous flip key, although player flipping does
continue to work (and must be rebound if you still want it)
2016-12-18 19:28:42 -05:00
twinaphex b087a7441a Fix game focus toggle 2016-12-11 03:52:08 +01:00
twinaphex 9957099bf0 Add 'unified menu controls' setting 2016-12-11 01:29:53 +01:00
twinaphex 584e93be4f Cleanup runloop.h header 2016-12-10 07:21:34 +01:00
twinaphex 4971fc53b5 Delete unused runloop_msg_queue_pull 2016-12-07 08:27:06 +01:00
twinaphex d04309fc05 Buildfix 2016-12-07 06:16:12 +01:00
twinaphex 31a7f64f2c Cleanups 2016-12-07 05:41:08 +01:00
twinaphex f6dcfd21cf (MSVC) MSVC build fixes 2016-12-07 05:39:27 +01:00
twinaphex e3620278a8 Add HAVE_MENU ifdefs for menu code 2016-12-07 03:16:34 +01:00
twinaphex 4b1c24adf9 - Move input flushing hack to input_keys_pressed functions
- Move menu binding state hack to menu_input_keys_pressed
2016-12-06 20:50:29 +01:00
twinaphex 77df0ef3ae Rebase input_key_pressed/input_menu_keys_pressed 2016-12-06 18:12:35 +01:00
twinaphex 44324ec62f (runloop.c) Cleanups 2016-12-06 18:05:59 +01:00
twinaphex b3aef50dff Move update_firmware_status to tasks/task_content.c 2016-12-06 08:28:26 +01:00
twinaphex a4e1be2cdb Simplify runloop_iterate 2016-12-06 08:22:52 +01:00
Twinaphex 3a399340e3 Merge pull request #4169 from AdrianoML/kbmquake
Changes to make keyboard and mouse games more playable
2016-12-06 07:21:20 +01:00
twinaphex fad523ea3e Create runloop_check_cheevos 2016-12-06 06:32:47 +01:00
Adriano Moura 6b99eeaf88 Implements a hotkey for toggling mouse grabbing, hiding and hotkey blocking. Usefull for playing tyrquake with kb/m. 2016-12-06 03:32:28 -02:00
twinaphex 0a3bc133dd This can be safely removed 2016-12-06 05:17:00 +01:00
twinaphex 2b07cf0d41 update_firmware_status - Try to prevent Coverity warning 2016-12-05 19:03:06 +01:00
twinaphex a5d3efcf9b (runloop.c) Style nits 2016-12-05 08:21:18 +01:00
twinaphex 46749fad65 Make runloop_iterate_time_to_exit function redundant 2016-12-05 08:16:47 +01:00
twinaphex d3834bb795 Simplify runloop_iterate_time_to_exit 2016-12-05 07:11:38 +01:00
twinaphex c98ef48860 (runloop.c) Get rid of 'default' case for switch 2016-12-05 07:08:34 +01:00
twinaphex cc6b602f6a (runloop.c) runloop_iterate - cleanup 2016-12-05 06:55:09 +01:00
twinaphex 78005f22f6 (runloop.c) Cleanups 2016-12-05 06:51:53 +01:00
twinaphex b467865c82 Cleanup 2016-12-05 02:31:34 +01:00
twinaphex c76e92622d runloop_data - use recording_data directly 2016-12-05 02:29:37 +01:00
twinaphex bbbcc97f57 Simplify input_push_analog_dpad 2016-12-04 22:20:47 +01:00
twinaphex 85aa88f665 Simplify input_push_analog_dpad 2016-12-04 21:30:50 +01:00
twinaphex 59c317dc1d Pass pointers to input_push_analog_dpad 2016-12-04 20:20:35 +01:00
twinaphex 0fdb8881cb Pass pointer variables to input_pop_analog_dpad 2016-12-04 20:17:55 +01:00
radius 1b3789edde better firmware checking 2016-11-29 22:21:44 -05:00
radius 9505602675 Prevent loading content when firmware is missing 2016-11-27 19:25:38 -05:00
twinaphex 80798ab924 Remove hacky 'OSK Keyboard' overlay 2016-11-27 02:46:09 +01:00
twinaphex 66595cd7c5 Cleanup 2016-11-21 15:04:09 +01:00
Diego Viola cf0c60bb98 Fix Netplay fullscreen issue
Fixes #3936
2016-11-07 16:01:18 -02:00
Jean-André Santoni 9677b5a129 Fix iOS touch 2016-11-07 16:18:30 +01:00
radius 2ff53a1b4d fix retroarch locking up when brought back to focus with pause in the background on 2016-11-06 14:31:02 -05:00
Brad Parker 5d28029be8 remove confirm_on_exit menu option 2016-10-30 23:29:03 -04:00
Brad Parker b14c3970d1 clear trigger_input before calling menu_event(), fixes firing of gamepad keys after binding 2016-10-30 00:12:47 -04:00
Brad Parker 2e654658d8 fix hotkey firing when binding quit key 2016-10-29 23:25:47 -04:00
Brad Parker 28c0e78292 ignore trigger input while binding a new key 2016-10-29 21:58:43 -04:00
Brad Parker 3354c07810 fix joypad A button in OSK 2016-10-28 23:47:17 -04:00
twinaphex 5d90b774da Fixes remaining input issues courtesy of bparker 2016-10-29 04:00:36 +02:00
Twinaphex 535215eefa Merge pull request #3879 from libretro/master
Merge
2016-10-28 07:44:10 +02:00
Brad Parker 320c49e08e restore menu animation 2016-10-27 23:56:55 -04:00
Brad Parker b7a8ff9395 fix menu toggle with F1 2016-10-27 23:43:07 -04:00
Brad Parker d1d5584d18 update copyright 2016-10-27 11:47:10 -04:00
twinaphex 902c096eb4 Further changes to bring it in line with menu_input branch 2016-10-27 11:13:31 +02:00
twinaphex 1b6e7da2ce Merge branch 'menu_input' 2016-10-27 10:54:49 +02:00
twinaphex f017593501 Reduce size of some char variables and get rid of some implicit memsets 2016-10-27 09:44:20 +02:00
twinaphex f778bee856 Add input_menu_keys_pressed to master 2016-10-27 06:38:02 +02:00
twinaphex 6235a5cd0d Can now toggle fullscreen, use quit key from menu (mouse grab
toggle doesn't work yet)
2016-10-27 06:13:39 +02:00
twinaphex 2bcbe017cd More work 2016-10-27 00:14:01 +02:00
twinaphex a9a2749af9 Add input_menu_keys_pressed 2016-10-27 00:13:29 +02:00
twinaphex 170febb72c (NGC/Wii) Buildfix 2016-10-26 06:04:42 +02:00
twinaphex 830f64446b Remove another RUNLOOP_CTL_ action 2016-10-26 04:11:12 +02:00
twinaphex d0a1c8609f Remove obsolete CTL actions 2016-10-26 04:08:54 +02:00
twinaphex 456c4c4d58 Remove video_driver_cached_frame_render wrapper function 2016-10-25 00:42:26 +02:00
twinaphex f41de35da1 Prevent 'Explicit null dereferenced' warning 2016-10-23 06:21:09 +02:00
twinaphex c6a1bcfcbe Prevent dereference after null check warning 2016-10-23 06:20:13 +02:00
twinaphex 0e79c2c37e Silence another warning 2016-10-23 05:56:55 +02:00
twinaphex 1cbc847133 In case we return false here, we should still unlock the
mutex first
2016-10-23 05:53:47 +02:00
twinaphex 4bffe5fc33 Change default value for last_input 2016-10-22 21:32:07 +02:00
twinaphex e2b16a1f15 Use straight uint64_t types for input states 2016-10-22 17:03:20 +02:00
twinaphex d08668b331 Rollback 4b807b482 - was unnecessary in hindsight anyway 2016-10-22 16:39:55 +02:00
twinaphex b923182e0b Pass settings pointer 2016-10-22 00:59:29 +02:00
twinaphex a96457b90d Further cleanups to runloop_iterate 2016-10-21 23:54:23 +02:00
twinaphex f648a11c0c Cleanups 2016-10-21 23:47:37 +02:00
twinaphex 6874035056 Further improve runloop_check_state 2016-10-21 23:45:56 +02:00
twinaphex e9766ce141 Cleanups 2016-10-21 23:30:34 +02:00
twinaphex 4109e17494 Reimplement runloop_check_state 2016-10-21 23:20:29 +02:00
twinaphex 47374bc719 Refactor runloop_check_state 2016-10-21 22:46:25 +02:00
twinaphex 7dcb57f22d Prevent some null pointer dereferences 2016-10-21 20:47:11 +02:00
twinaphex e80ad9c0b0 Don't grab settings pointer 2016-10-21 04:42:57 +02:00
twinaphex 370b18e95b Cleanup 2016-10-21 04:27:14 +02:00
twinaphex 34f0a4f49f Simplify runloop_check_state 2016-10-21 04:11:07 +02:00
twinaphex c6ae8a527c Cleanups 2016-10-21 04:03:48 +02:00
twinaphex b4e85b9bbd Cleanups 2016-10-21 03:58:16 +02:00
twinaphex 2350ef9234 Get rid of runloop_ctl actions 2016-10-21 03:46:17 +02:00
twinaphex b13a14d923 (runloop.c) Cleanups 2016-10-21 02:56:02 +02:00
twinaphex 1822726452 Cleanups 2016-10-21 02:52:01 +02:00
twinaphex eeb3d5e137 Cleanups 2016-10-21 02:05:43 +02:00
twinaphex 7241f1476c Cleanups 2016-10-21 01:51:50 +02:00
twinaphex 5ed214e5eb Cleanups 2016-10-21 01:50:46 +02:00
twinaphex 5621d258f8 (runloop.c) Cleanups 2016-10-21 01:44:14 +02:00
twinaphex 5a7da6d195 Simplify runloop_check_state 2016-10-20 06:34:39 +02:00
twinaphex 763f7ecb01 Replace some more runloop_ctl calls 2016-10-20 06:17:53 +02:00
twinaphex ea47660282 runloop_iterate - cut down on another runloop_ctl function call 2016-10-20 06:15:53 +02:00
twinaphex 3a4b638824 Simplifications - don't call runloop_ctl so much in runloop_iterate 2016-10-20 06:07:57 +02:00
twinaphex 606a203f29 Simplify runloop_iterate_time_to_exit 2016-10-20 06:02:08 +02:00
twinaphex ae7ccdfb92 Don't pass param to runloop_iterate_linefeed 2016-10-20 03:32:13 +02:00
twinaphex 4b807b482f Create runloop_poll 2016-10-20 02:17:17 +02:00
twinaphex ecce60c6ae Prevent more implicit memsets 2016-10-16 01:27:22 +02:00
twinaphex d078df7a37 Prevent implicit memsets 2016-10-09 09:05:41 +02:00
twinaphex b8f8f159c5 Get rid of unnecesary wrapper function 2016-10-08 18:41:51 +02:00
Gregor Richards 71873e8c97 Moving Netplay pre- and post-frame behavior into core_run
This (mostly) prevents other paths from accidentally side-stepping
Netplay. Netplay itself now sets an in_netplay variable to avoid
self-recursion in its own core_run calls.
2016-10-04 13:40:07 -04:00
twinaphex 19863e4174 autosave_lock/autosave_unlock - no longer require HAVE_THREADS ifdefs 2016-10-04 09:56:58 +02:00
twinaphex ba1f0a31e9 Cleanups 2016-10-03 08:24:35 +02:00
Gregor Richards e41ac34561 Get rid of global->netplay
Moved settings values into settings->netplay, and global->netplay.enable
is moved into netplay itself, and is no longer a configuration value
whatsoever, as that conflicts with the behavior of the netplay menu.
2016-10-02 22:13:34 -04:00
twinaphex 8f163e6972 Revert "Move global->name to paths.c"
This reverts commit 6ee7b733aa.
2016-10-01 08:18:23 +02:00
twinaphex 243dc139d2 Revert "Create path server and add to paths.c"
This reverts commit 00a1e3716a.
2016-10-01 08:17:44 +02:00
twinaphex 7d20224ff0 Revert "Move path settings to paths.c"
This reverts commit 3a7e9a7052.
2016-10-01 08:17:13 +02:00
twinaphex 5a3e5f85a5 Revert "Add record dirs to dirs.c"
This reverts commit fe3281e05d.
2016-10-01 08:15:07 +02:00
twinaphex 2dcc5b8e43 Add LIBRETRO_DEVICE to unset/set/is functions for override settings 2016-10-01 06:14:30 +02:00
twinaphex 5ff13df40f Move global->record to record_driver.c 2016-10-01 00:47:05 +02:00
twinaphex fe3281e05d Add record dirs to dirs.c 2016-09-30 07:45:04 +02:00
twinaphex 3a7e9a7052 Move path settings to paths.c 2016-09-30 06:33:57 +02:00
twinaphex 00a1e3716a Create path server and add to paths.c 2016-09-30 06:22:56 +02:00
twinaphex 6ee7b733aa Move global->name to paths.c 2016-09-30 06:11:11 +02:00
twinaphex 1266c0609a Create path_is_empty 2016-09-30 04:43:16 +02:00
twinaphex 228886062b Create path_clear 2016-09-30 04:31:19 +02:00
twinaphex 9384875ab0 Don't use HAVE_NETPLAY any more 2016-09-29 21:07:10 +02:00
twinaphex 190c417350 Remove stub function 2016-09-29 20:14:26 +02:00
twinaphex 3281c7a1a6 (runloop.c) Cleanups 2016-09-29 12:11:00 +02:00
twinaphex 1537ba312d Remove RUNLOOP_MSG_QUEUE_FREE 2016-09-29 10:22:46 +02:00
twinaphex 30a46a5ab9 Prevent null pointer dereference 2016-09-29 10:07:41 +02:00
twinaphex ed2b89db27 Cleanups 2016-09-29 08:34:08 +02:00
twinaphex 329f6ad612 Update path_get 2016-09-29 08:31:41 +02:00
twinaphex 7e1a61570a Add more functionality to path_set 2016-09-29 07:46:21 +02:00
twinaphex 89505fa011 Get rid of global->patch 2016-09-29 05:46:31 +02:00
twinaphex 093f16dd71 Prevent NULL pointer dereference 2016-09-28 08:08:35 +02:00
twinaphex 90af64769d Get rid of global->sram 2016-09-28 07:27:39 +02:00
twinaphex 5bce79369a Get rid of global->sram.use, turn it into static boolean
variable inside rarch_ctl
2016-09-28 07:17:34 +02:00
twinaphex 0d95e286e3 Add core_poll() back when netplay stalls 2016-09-25 18:46:39 +02:00
twinaphex a1488ae34f Move subsystem path to paths.c 2016-09-25 15:49:09 +02:00
twinaphex bef9a8d9d6 Rearrange some code 2016-09-25 05:00:54 +02:00
twinaphex 8e6d9a6978 move default_shader_preste code to paths.c 2016-09-25 04:55:16 +02:00
twinaphex 2d11ea71cc Move runloop_fullpath to paths.c 2016-09-23 03:39:44 +02:00
twinaphex 6222badb51 Remove header includes 2016-09-23 03:21:33 +02:00
twinaphex 02dc90d7bd Move code from runloop.c to dirs.c 2016-09-23 03:19:33 +02:00
twinaphex 80d577094c Use config_file_exists 2016-09-18 21:57:51 +02:00
twinaphex 4d317ba5d7 Update dirs.c 2016-09-17 14:49:35 +02:00
twinaphex 6bd6245f0a Move path_clear_all call 2016-09-17 14:41:49 +02:00
twinaphex 16289a8622 Cleanup 2016-09-17 14:25:29 +02:00
twinaphex 471347689d Create path_clear_all 2016-09-17 13:47:26 +02:00
twinaphex e338b78792 Use new core options accessors 2016-09-17 13:40:25 +02:00
twinaphex 0aa2cf5019 Create path_set_config and path_is_config_empty 2016-09-17 13:04:12 +02:00
twinaphex b89def5d8f Rename config_get/config_set functions 2016-09-17 12:51:44 +02:00
twinaphex 5aebdb7484 Mov code to paths.c 2016-09-17 12:35:29 +02:00
twinaphex 96d4347c4a Go back to only calling core_poll() if menu is alive or RetroArch
is paused
2016-09-17 12:05:27 +02:00
twinaphex 1cf7d758b5 Move code to movie.c 2016-09-17 01:54:33 +02:00
twinaphex 125c4f9529 Add menu_event.c 2016-09-16 16:39:30 +02:00
twinaphex 2294bcf158 Not sure if this was brought back intentionally; probably not 2016-09-16 14:13:55 +02:00
Gregor Richards f2058620d3 Tell Netplay when the frontend is paused
The runloop now informs Netplay if it's paused. This currently happens
by polling the pause state every frame, which is ugly, but might be the
only feasible technique.
2016-09-16 07:40:24 -04:00
Twinaphex e4cf93cff4 Merge pull request #3600 from GregorR/netplay-new-features
New Netplay features
2016-09-16 13:35:12 +02:00
twinaphex 574d51d1e0 Cleanups 2016-09-16 12:49:26 +02:00
twinaphex 17e78909d5 Cleanups 2016-09-16 12:43:19 +02:00
Gregor Richards 96186438ec Remote pausing
Support for remote pausing, and with it, support for Netplay pausing the
frontend correctly. With this patch alone this doesn't work, since
there's no clean way for the frontend to tell Netplay that it's paused.
2016-09-15 23:06:32 -04:00
twinaphex de1c5ec8bd Rename menu_input_frame_retropad to menu_event 2016-09-15 21:14:45 +02:00
twinaphex f648ea8602 Cleanups 2016-09-15 16:07:20 +02:00
twinaphex 233925bea6 Rename widgets/menu_popup to widgets/menu_dialog 2016-09-15 15:57:25 +02:00
twinaphex 6f23a8ac0d Move httpserver to network/ 2016-09-12 17:21:00 +02:00
twinaphex 056cc8ece8 Move menu_popu.c to menu/widgets 2016-09-11 21:03:31 +02:00
twinaphex b93ef046a7 Header include cleanups 2016-09-11 16:31:23 +02:00
twinaphex 5aaebcfa62 Header include cleanups 2016-09-08 06:07:43 +02:00
twinaphex 8320466824 Add HAVE_CONFIG_H ifdefs 2016-09-06 23:52:33 +02:00
twinaphex c3ba0ba4e9 Revert "Refactor core_system_info_* functions"
This reverts commit f637805c9e.
2016-09-06 08:38:26 +02:00
twinaphex f637805c9e Refactor core_system_info_* functions 2016-09-06 07:08:38 +02:00
twinaphex 82d82110ae Merge system.h with core.h 2016-09-06 06:11:54 +02:00
Brad Parker abd5d81b70 fix core unload when closing content 2016-09-05 12:46:28 -04:00
Brad Parker ef29bc96b0 do not return to game after canceling quit confirm if user toggled the menu manually 2016-09-05 11:35:27 -04:00
Brad Parker 276542ea98 more menu popup refactor, add back working confirm_on_exit 2016-09-05 01:04:15 -04:00
Brad Parker 27925da4ae revert confirm_on_exit option for now 2016-09-04 15:31:50 -04:00
Twinaphex affb159fe2 Buildfix 2016-09-03 08:27:58 +02:00
twinaphex fb1ac7ab38 Cleanups 2016-09-03 08:22:41 +02:00
Brad Parker ee7545857c add config option to enable quit confirmation 2016-09-01 21:47:25 -04:00
twinaphex 3526a2454b Cleanups 2016-08-28 18:39:10 +02:00
twinaphex 36d9b866cc Remove some logs 2016-08-22 02:30:23 +02:00
Brad Parker 0e6059f1eb call quit event when key combination for quit is pressed, fixes autosave in issue #3335 2016-08-20 22:11:06 -04:00
twinaphex 64d6e0facf (Vita) Implement proper gamepad menu toggle combo for Vita, and remove
old hack
2016-08-02 16:48:54 +02:00
twinaphex d77dd4f0d3 Add enums for gamepad menu toggle combos 2016-08-02 16:45:50 +02:00
twinaphex 39aba8e36f Create override setting functions 2016-08-01 20:41:42 +02:00
Andre Leiradella 292335b84c Added an embedded HTTP server to RetroArch; Mapped the /mmaps URI to a JSON-based RESTful API to retrieve memory maps 2016-07-31 22:45:01 +01:00
radius d58c802e3b restore the original shader on close 2016-07-30 14:36:01 -05:00
twinaphex 58c425ef19 Revert "Refactor settings"
This reverts commit afcc9657d2.
2016-07-25 12:30:41 +02:00
twinaphex afcc9657d2 Refactor settings 2016-07-25 11:59:38 +02:00
twinaphex 2be127c04a Start wrapping settings->path.libretro 2016-07-24 11:12:26 +02:00
twinaphex a6aa0b8e0c Cleanups 2016-07-23 14:29:57 +02:00
twinaphex ee87ef0ae9 Turn path_core_specific_config into static variable 2016-07-23 14:27:17 +02:00
twinaphex f7c57d7ae1 Hotkey messages should have precedence over FPS display 2016-07-19 18:34:17 +02:00
twinaphex 8345ad2aba Cleanups 2016-07-18 07:11:08 +02:00
radius c38adcabd3 fix shader next/prev 2016-07-17 23:47:43 -05:00
twinaphex 34fd48c961 Refactor runloop_iterate_menu 2016-07-11 02:47:46 +02:00
twinaphex 38005a4b0a Create runloop_iterate_menu 2016-07-11 02:46:16 +02:00
Twinaphex a2c435ab2c Reintroduce deinit and get rid of slock_unlock at bottom of threaded_worker function 2016-07-06 16:35:00 +02:00
twinaphex 51e2da2cbd Revert this back - reintroduce the leak but should hopefully
solve issues on newer Intel CPUs
2016-07-06 13:21:08 +02:00
twinaphex 241670cec2 Dehardcode some more strings 2016-07-01 06:02:57 +02:00
twinaphex 86fa52a2ea Add FILE_PATH_BSV_EXTENSION 2016-07-01 05:59:36 +02:00
Jean-André Santoni 8c442985cb Forgot to add a break here 2016-06-30 19:17:06 +02:00