Commit Graph

694 Commits

Author SHA1 Message Date
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 de130dd516 Build fix for non-HAVE_NETPLAY 2014-10-09 04:04:56 +02:00
twinaphex 5d558497af Simplify init_core 2014-10-08 23:29:24 +02:00
twinaphex 80578199f6 Reduce calls to 'draw_frame' to one 2014-10-08 21:43:19 +02:00
twinaphex bb7b3a0d70 Add RARCH_CMD_OVERLAY_NEXT 2014-10-08 18:26:46 +02:00
twinaphex 1c3243d457 Provide explanation for not performing RARCH_CMD_FULLSCREEN_TOGGLE 2014-10-08 18:23:16 +02:00
twinaphex f30042ff03 If video driver/video context driver doesn't support windowed mode,
then treat RARCH_CMD_FULLSCREEN_TOGGLE as no-op
2014-10-08 17:30:05 +02:00
twinaphex bcd5f8aa5b Add has_windowed to video driver and graphics context driver 2014-10-08 17:23:02 +02:00
twinaphex c35d25c76e Add RARCH_CMD_NETPLAY_FLIP_PLAYERS and RARCH_CMD_FULLSCREEN_TOGGLE 2014-10-08 16:41:08 +02:00
twinaphex 4bd018257e Add RARCH_CMD_GRAB_MOUSE_TOGGLE 2014-10-08 16:18:18 +02:00
twinaphex b3309d2132 Create RARCH_CMD_PAUSE_TOGGLE 2014-10-08 16:12:00 +02:00
twinaphex 35cda4b78b Create RARCH_CMD_AUDIO_MUTE_TOGGLE 2014-10-08 16:07:19 +02:00
AndresSM 7249ebc00c fix disk_next, add option for disk_prev 2014-10-07 20:19:12 -05:00
twinaphex 1ac12083d8 Get rid of RARCH_CMD_OVERLAY_REINIT 2014-10-05 20:25:54 +02:00
twinaphex 34f3c7d22e check_mute - go through rarch_main_command instead of directly
calling driver.audio
2014-10-05 20:19:12 +02:00
twinaphex 6086b411cb rarch_main_command - Have RARCH_CMD_MENU_SAVE_CONFIG indicate success or failure too 2014-10-05 19:16:48 +02:00
twinaphex dda84be1ac - Add RARCH_CMD_CORE_INIT
- Change returntype of rarch_main_command to bool to indicate
success or failure at performing action - used by RARCH_CMD_CORE_INIT
2014-10-05 19:13:03 +02:00
twinaphex 2ba246bbb4 Add RARCH_CMD_CORE_DEINIT to rarch_main_command 2014-10-05 18:55:55 +02:00
twinaphex 68df820c06 Add RARCH_CMD_AUTOSAVE_STATE 2014-10-05 15:36:57 +02:00
twinaphex 5b053a96df autosave_interval setting now uses RARCH_CMD_AUTOSAVE_INIT -
it deinits beforehand
2014-10-05 15:33:16 +02:00
CautiousAlbino c4250abfbe Fix broken SRAM.
RARCH_CMD_SAVEFILES_INIT would clear out SRAM struct, but not
restore it.
2014-10-05 11:01:50 +02:00
twinaphex 17f9d08190 Split up RA runloop into separate file - runloop.c 2014-10-05 01:31:48 +02:00
Twinaphex 93f54db7fa (OSX/iOS) Don't set return value of rarch_main_iterate to 1 inside
the menu when g_settings.menu.pause_libretro is set to false -
disconnecting the gamepad for instance and there being no
other input would cause the core to no longer 'run' until you
start pressing some kind of input source again
2014-10-04 17:43:03 +02:00
twinaphex 3d68429aca Change menu_iterate return value to int 2014-10-04 16:20:28 +02:00
Jay McCarthy a2bd6c535a Allow the menu to run immediately again if there is input
This corresponds to when the user is holding down a button. Run loops
are typically edge triggered and not level triggered, so we only see
the changes, thus we don't get continually woken up when the level
stays at HIGH.
2014-10-04 10:06:15 -04:00
Jay McCarthy 0adcd2df76 Change interpretation of iteration return 2014-10-04 09:11:26 -04:00
twinaphex 458eff5f4d Both the 'pause' state and the 'menu' state return 1 - so that
we can signal to the Apple upper-layer function that we want
to run CFRunLoopWakeUp
2014-10-04 14:14:45 +02:00
twinaphex 291f4579a2 update_frame_time - don't make this an inline function 2014-10-04 13:58:41 +02:00
twinaphex 3472987d9f Use a goto in rarch_main_iterate 2014-10-04 13:47:26 +02:00
twinaphex f86ad85fcd Use -1 for indicating we want to exit out of rarch_main_iterate 2014-10-04 13:41:57 +02:00
twinaphex e79d3d1630 Change return values for rarch_main_iterate and do_state_checks 2014-10-04 13:30:09 +02:00
twinaphex 65572c57dc (MSVC) Build fixes 2014-10-03 22:23:02 +02:00
twinaphex 476a759b14 RARCH_ACTION_STATE_MENU_RUNNING_* - implement only when
HAVE_MENU is defined
2014-10-03 19:19:52 +02:00
twinaphex 4cccfe9c4b Add RARCH_CMD_RUMBLE_STOP 2014-10-03 19:16:33 +02:00
twinaphex b7d47f3df9 Sanitize fastforward_ratio value when loading a config file
in case it's <= 0.0
2014-10-03 19:07:40 +02:00
twinaphex 557789a479 Cleanups 2014-10-03 18:54:26 +02:00
twinaphex 5057eda902 Small correction to conditional in frame_time 2014-10-03 18:13:26 +02:00
twinaphex 64b535872d Rewrite limit_frame_time 2014-10-03 18:12:41 +02:00
twinaphex aa961dba9e Add 'Limit Maximum Run Speed' setting - set this to 'off' to
get the fastforward_ratio = -1 (no limit) setting again
2014-10-03 18:05:46 +02:00
twinaphex 5c09e6be84 Add RARCH_CMD_DISK_EJECT_TOGGLE/RARCH_CMD_DISK_NEXT 2014-10-03 15:13:37 +02:00
twinaphex cc277fcf76 Move more init/deinit code to rarch_main_command 2014-10-03 15:04:00 +02:00
twinaphex ade2f71662 Cleanup do_state_checks 2014-10-03 14:53:04 +02:00
twinaphex 45b61457e2 Rewrite rarch_check_fullscreen 2014-10-03 13:45:41 +02:00
twinaphex e99a6f99d4 Move RARCH_CMD_HISTORY_DEINIT right above RARCH_CMD_HISTORY_INIT 2014-10-03 13:08:24 +02:00
twinaphex 4a623684c2 Init history file right before we attempt to push something to it
in rarch_main
2014-10-03 13:07:33 +02:00
twinaphex e7fed15250 Add RARCH_CMD_DRIVERS_DEINIT/RARCH_CMD_DRIVERS_INIT 2014-10-03 12:40:41 +02:00
twinaphex 2897e2f1fd Add RARCH_CMD_CORE_INFO_DEINIT 2014-10-03 12:37:55 +02:00
twinaphex 1762f70d9b RARCH_CMD_RECORD_INIT - call rarch_main_command(RARCH_CMD_RECORD_DEINIT)
for safety precautions
2014-10-03 12:36:29 +02:00
twinaphex e9a10c6295 Add more commands to rarch_main_command 2014-10-03 12:35:38 +02:00
twinaphex de3dbfb439 Have more initing/deiniting go through rarch_main_command 2014-10-03 12:26:29 +02:00
twinaphex 330dd1822c Cleanups 2014-10-03 12:07:15 +02:00
twinaphex e996e3df45 Move more stuff to rarch_main_command 2014-10-03 11:59:24 +02:00
twinaphex 4f0953f3e3 Add RARCH_CMD_REWIND_DEINIT/RARCH_CMD_REWIND_INIT/RARCH_CMD_REWIND_TOGGLE 2014-10-03 11:44:54 +02:00
twinaphex 16fd8b227e Expand rarch_main_command 2014-10-03 11:33:58 +02:00
twinaphex 75271b7d10 Turn more functions into static 2014-10-03 01:07:35 +02:00
twinaphex 532938c5fa Refactor meta_input_keys_pressed 2014-10-03 00:55:44 +02:00
twinaphex 8a1f15c460 Move rarch_check_block_hotkey to input/input_common.c and make
the function static
2014-10-03 00:46:14 +02:00
twinaphex c25bc493ab Add RARCH_CMD_SHADER_DIR_INIT/RARCH_CMD_SHADER_DIR_DEINIT 2014-10-03 00:13:50 +02:00
twinaphex a8d8e9d13b (rarch_main_command) Inline set_fullscreen function into RARCH_CMD_REINIT 2014-10-03 00:08:42 +02:00
twinaphex 9de94c6298 Move flush_audio to libretro_version_1.c as static function 2014-10-02 23:43:28 +02:00
twinaphex e1b139da84 (RARCH_CONSOLE) Prevent exit_spawn from being set to true whenever
we start new content
2014-10-02 22:57:31 +02:00
twinaphex e6a79f798b Refactor MODE_EXITSPAWN and MODE_EXITSPAWN_START_GAME 2014-10-02 21:39:29 +02:00
twinaphex ed928b70be Simplify rarch_render_cached_frame 2014-10-02 20:00:11 +02:00
twinaphex 0135d763db Move g_extern.netplay to driver.netplay_data 2014-10-01 23:00:05 +02:00
twinaphex dead11f182 Move driver_active variables over to driver global 2014-10-01 22:34:48 +02:00
twinaphex a35c61ec90 (Audio driver) Add 'alive' function callback 2014-10-01 21:42:19 +02:00
Twinaphex e135931644 Merge pull request #1072 from CyberShadow/pull-20141001-131543
Add --eof-exit and --max-frames
2014-10-01 17:33:56 +02:00
Vladimir Panteleev c3e6dd41cc Add --eof-exit switch 2014-10-01 14:33:00 +00:00
Vladimir Panteleev 9b9fa94c27 Add --max-frames option 2014-10-01 13:22:22 +00:00
Twinaphex 41351fc73c (Apple HID) Implement VID/PID passing 2014-10-01 14:24:55 +02:00
Twinaphex 76240aa322 (iOS) Prevent crash when selecting 'Quit RetroArch' in menu 2014-10-01 14:19:00 +02:00
twinaphex faf124d5ea Cleanups to update_frame_time 2014-10-01 13:23:53 +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 19372d5ce6 main_clear_state_extern - start manually cleaning up/freeing
pointers in g_extern before doing a memset 0 on it - not
complete yet
2014-09-30 21:50:05 +02:00
twinaphex efd356a466 Refactor rarch_main_state_new - use g_extern.main_is_init 2014-09-30 21:32:18 +02:00
twinaphex f273b34f73 deinit_msg_queue becomes static function - clean it up in rarch_main_state_free 2014-09-30 21:29:28 +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 9daad8bdb8 Split up rarch_main_clear_state into two functions - rarch_main_state_new
and rarch_main_state_free
2014-09-30 20:46:15 +02:00
twinaphex c5f1788b36 Make rarch_main_clear_state more resilient 2014-09-30 18:54:02 +02:00
twinaphex aaee1a016f rarch_audio_flush - prevent segfault if g_extern.audio_data.data
is NULL
2014-09-30 17:08:32 +02:00
Twinaphex 9f5031188b Merge pull request #1066 from CyberShadow/pull-20140930-083313
Refactor old_state out of meta_input_keys_pressed into rarch_main_iterate
2014-09-30 10:40:43 +02:00
Vladimir Panteleev 0c104ffef8 Refactor old_state out of meta_input_keys_pressed into rarch_main_iterate 2014-09-30 08:35:41 +00:00
twinaphex 8584ef94f4 Implement RARCH_CMD_MENU_PAUSE_LIBRETRO 2014-09-29 15:55:41 +02:00
twinaphex 043cfdbb43 Stop/start audio driver only when g_settings.menu.pause_libretro is enabled 2014-09-29 15:40:52 +02:00
Vladimir Panteleev d0e970f175 Fix/reimplement input flushing
This fixes:

- menu toggle erratically not working on Android
- stray input going to libretro core when resuming content
- bound keys triggering as soon as they're bound on Android
- menu key repeat also repeating keys which should not be repeated
- issues caused by relying on timeouts for flushing

Architectural changes:

- menu_ctx_driver_t::input_postprocess now takes state and old_state
  (this allows getting rid of menu_handle_t::trigger_state)

Related changes:

- remove some no-op input_postprocess handlers (same effect as NULL)
- menu_iterate now uses the parameters passed to it, instead of
  polling menu_input
- menu_input is now merged into meta_input_keys_pressed
2014-09-29 12:58:52 +00:00
twinaphex 9d52362940 Create do_menu_oneshot function 2014-09-29 13:33:32 +02:00
twinaphex c7d6eaa830 Refactor RARCH_ACTION_STATE_MENU_PREINIT into RARCH_ACTION_STATE_MENU_RUNNING 2014-09-29 13:27:28 +02:00
twinaphex 96958cc46e Refactor menu toggle code 2014-09-29 13:12:39 +02:00
twinaphex 5751dfdecf Move stateful code over to rarch_main_set_state (for menu toggling) 2014-09-29 12:44:17 +02:00
twinaphex 449cb9e9ed (Menu) Do away with throttle_frame in menu_iterate - let rarch_main_iterate
do this
2014-09-28 19:11:11 +02:00
twinaphex 3c8cc513ab Make it possible to compile without menu support again 2014-09-28 18:01:59 +02:00
twinaphex cdefbcfc61 (retroarch.c/overlay.c) - cleanups 2014-09-28 17:52:15 +02:00
twinaphex 822bbe4e92 Create menu_shader_manager_apply_changes and move code to menu_shader.c 2014-09-28 17:42:31 +02:00
twinaphex 6cb07c02ab Do early return in loop if no analog Dpad mode set 2014-09-26 14:07:48 +02:00
twinaphex 6c637dafc3 Refactor update_frame_time/limit_frame_time 2014-09-26 12:43:15 +02:00
twinaphex d1d504df6c Implement menu toggle in a better way 2014-09-25 18:38:35 +02:00
twinaphex d94e8329e8 Move stuff to config.features.h 2014-09-25 08:12:58 +02:00
twinaphex 00e605d9ba Take out MODE_MENu - and introduce g_extern.is_menu 2014-09-25 06:33:28 +02:00
twinaphex 15f82cb477 Take out ACTION_STATE_FLUSH_INPUT 2014-09-25 06:25:27 +02:00
twinaphex eec0724175 Reimplement FLUSH_INPUT 2014-09-25 04:58:26 +02:00