Commit Graph

629 Commits

Author SHA1 Message Date
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
twinaphex
8015061720 Refactor menu_input - add input_keys_pressed in addition to
meta_input_keys_pressed
2014-09-25 04:19:09 +02:00
twinaphex
2309a3e716 Move input_poll to libretro_version_1.c 2014-09-24 09:52:01 +02:00
twinaphex
9d94513dc4 (Menu/Shaders) Move all shader manager code to frontend/menu/menu_shader 2014-09-24 07:56:47 +02:00
twinaphex
63680ca5b4 Go through static variable retro_ctx for libretro backend
functions
2014-09-23 03:55:19 +02:00
twinaphex
10b6384bb2 Move recording_dump_frame back to retroarch.c 2014-09-23 03:14:25 +02:00
twinaphex
a7e6df69c8 Split up libretro (v1) code to libretro_version_1.c file 2014-09-23 03:03:56 +02:00
twinaphex
40402174d9 Take out obsolete manipulation of driver.menu->old_input_state 2014-09-22 02:57:36 +02:00
twinaphex
0501172f7a Should fix issue https://github.com/libretro/RetroArch/issues/1039 2014-09-21 21:40:54 +02:00
twinaphex
430e0f1911 Reimplement rarch_main_iterate - menu iteration frame now gets
called from here too. Do away with the hoky 'MENU_GAME' state
as well.
2014-09-21 09:18:26 +02:00
twinaphex
29aed58e4e Refactor MODE_LOAD_GAME 2014-09-21 06:50:10 +02:00
twinaphex
7056c9ca39 Refactor MENU_CLEAR_INPUT 2014-09-21 06:41:47 +02:00
twinaphex
9dc35b056f Refactor MODE_MENU_PREINIT code 2014-09-21 06:33:49 +02:00
twinaphex
1e4cd8abe0 Move frame_time_last= 0 to rarch_set_action_state 2014-09-21 04:49:10 +02:00
twinaphex
e5c22e3e54 Refactor check_enter_menu 2014-09-19 22:41:40 +02:00
twinaphex
1bfc20b041 Refactor check_movie_record code some more 2014-09-19 20:06:09 +02:00
twinaphex
17088bdaf2 Split up check_movie_record into check_movie_init and check_movie_record 2014-09-19 20:00:15 +02:00
twinaphex
bf40faebb9 Refactor do_state_checks - returns false if paused 2014-09-19 09:14:49 +02:00
twinaphex
038d397ece Minor cleanups in retroarch.c 2014-09-19 07:53:03 +02:00
twinaphex
58cfb27c5a Split up some of the code in retroarch.c to general.c 2014-09-19 07:34:34 +02:00
twinaphex
f16a065cdd Fixes 'block hotkey enable' 2014-09-18 04:04:33 +02:00
Twinaphex
c75f1d163b Merge pull request #1036 from timostrunk/fix_state_naming
Fix directory and naming of savestates, srm files.
2014-09-17 20:20:33 +02:00
twinaphex
4c4ae11ab6 Optimizations to input handling in rarch_main_iterate - pass
'trigger' state around
2014-09-17 20:15:56 +02:00
Timo Strunk
757f7d96c2 Now path is also correctly sanitized. g_extern.basename of /path/to/file.zip#game.img is now /path/to/game 2014-09-17 19:46:59 +02:00
Timo Strunk
95f02d12f4 Basenames should now be correct also when using zipfiles. It is now always only the basename of the file in the zipfile. So if zipname == internalname, its zipname, like requested here: https://github.com/libretro/RetroArch/issues/1030#issuecomment-55810822 2014-09-17 18:41:23 +02:00
twinaphex
82806dcd85 Hide away last BIND_PRESSED invocations with check_quit_key_func 2014-09-17 17:48:41 +02:00
twinaphex
f7061e7233 Rewrite check_pausegp 2014-09-17 17:45:44 +02:00
twinaphex
3892c8326d Use macro functions to hide away some of the ugliness 2014-09-17 07:38:49 +02:00
twinaphex
92938fe45f Optimizations - prevent static bools everywhere in check_* functions
- input_keys_pressed_func takes a pointer and sets it to the last
input state. We then pass this around functions and use it where
necessary
2014-09-17 06:55:03 +02:00
twinaphex
310438f15b Refactor away input_key_pressed_func 2014-09-17 00:29:47 +02:00
twinaphex
7a66467161 Create macro BIND_PRESSED - wrapper around BIT64_GET 2014-09-16 18:08:44 +02:00
twinaphex
709ecbfa67 Get rid of some redundant function pointer checks for driver.input 2014-09-16 17:50:38 +02:00
twinaphex
a5e367d2f0 More of aforementioend 2014-09-16 09:48:47 +02:00
twinaphex
c391249e3f Optimizations -
* reduce amount of calls to input_key_pressed_func all throughout
rarch_main_iterate - call input_keys_pressed_func only once and
then pass an input state value around to all subsequent functions
* define retro_input_t typedef - simply an uint64_t for now since
meta binds don't exceed 64 entries yet
2014-09-16 09:26:08 +02:00
twinaphex
2f06612133 (retroarch.c) refactors 2014-09-16 07:20:09 +02:00
twinaphex
cbce0c7b8a Create write_empty_file helper function in file_path.c 2014-09-15 05:49:48 +02:00
twinaphex
2284395c4d Get rid of frontend_loop 2014-09-14 16:29:09 +02:00
twinaphex
a3269ff9ed Add RARCH_ACTION_STATE_MENU_RUNNING_FINISHED to RARCH_CMD_RESUME 2014-09-14 15:37:47 +02:00
twinaphex
fe49a0fe40 Some control flow changes 2014-09-14 15:32:32 +02:00
twinaphex
e9c865f56a Create main_entry_decide to delegate decisionmaking process of
what to bind frontend_loop to
2014-09-14 15:23:40 +02:00
Timo Strunk
aeb849b109 Defer core now realizes whether something is compressed or not 2014-09-12 17:48:35 +02:00
Timo Strunk
11b63cbe3d Merge remote-tracking branch 'upstream/master' into zip_support 2014-09-12 17:06:41 +02:00
Timo Strunk
5ad5a1b6a9 Removed general zip support flags again. 2014-09-12 17:04:14 +02:00
twinaphex
3863fe1e95 Add RARCH_ACTION_STATE_FORCE_QUIT 2014-09-12 05:14:43 +02:00
twinaphex
d96de429ea (Menu) Add RARCH_CMD_LOAD_CONTENT_PERSIST 2014-09-12 05:01:24 +02:00
twinaphex
e6328090e9 (Shaders) Fix build 2014-09-12 00:22:13 +02:00
twinaphex
c24e18910f Put ifdef around gfx_shader_parse_type 2014-09-12 00:20:46 +02:00
twinaphex
d848a0c5a6 Get rid of one unnecessary HAVE_MENU ifdef 2014-09-09 23:20:04 +02:00
twinaphex
65a2b0c900 Move/rename menu_update_system_info to rarch_update_system_info 2014-09-07 07:12:10 +02:00
twinaphex
707b954947 Move menu_save_new_config to rarch_main_command 2014-09-06 22:11:23 +02:00
twinaphex
fface89461 Move/rename menu_replace_config to retroarch.c (rarch_replace_config) 2014-09-06 22:05:33 +02:00
Lioncash
ab1ab62a6d Fix some printf specifiers to the correct signed-ness 2014-09-05 19:43:32 -04:00
twinaphex
125f256c5e (Menu) Refactor menu_content_history_push_current 2014-09-05 19:56:23 +02:00
twinaphex
1426e705c9 (Frontend) Go through frontend_loop function pointer 2014-09-05 16:08:03 +02:00
twinaphex
ca1066d60e Refactor CLEAR_INPUT 2014-09-05 05:57:27 +02:00
twinaphex
f7e1cb870f (Menu) Immediately apply changes to shader parameters 2014-09-05 03:44:19 +02:00
twinaphex
514e454f16 Bump up max players to 16 2014-09-04 16:15:49 +02:00
twinaphex
0f12c67054 (Deferred core) Fix direct loading of deferred core 2014-09-04 05:10:44 +02:00
twinaphex
2574816473 (main_set_state) More refactoring 2014-09-03 18:46:17 +02:00
twinaphex
d539bed82c Hide more manipulation of lifecycle_state behind rarch_main_set_state
function
2014-09-03 18:36:46 +02:00
twinaphex
51ed93d703 Start creating separate function that affects the lifecycle state -
rarch_main_set_state
2014-09-03 18:16:49 +02:00
twinaphex
74ddc9c3b7 Go through rarch_main_command instead of directly manipulating
g_extern.lifecycle_state
2014-09-03 16:55:56 +02:00
twinaphex
c92269dedf Move core_info/core_info_current to global 2014-09-03 14:57:29 +02:00
twinaphex
55aa477232 Move rarch_defer_core to retroarch.c 2014-09-03 06:23:44 +02:00
twinaphex
bc1358a021 Refactor load_menu_content_history 2014-09-03 00:14:02 +02:00
Timo Strunk
0c4c749f81 Added commandline 7z support 2014-09-02 17:05:15 +02:00