Commit Graph

469 Commits

Author SHA1 Message Date
twinaphex d27ffd007f (Menu) Refactor away load_menu_game_new_core 2014-07-22 03:41:24 +02:00
twinaphex 176b4f91b6 Create RARCH_CMD_LOAD_CORE 2014-07-22 03:34:28 +02:00
twinaphex 72be4b17e7 (Main) Take out HAVE_SCREENSHOTS ifdef
Create RARCH_CMD_TAKE_SCREENSHOT
2014-07-22 03:17:47 +02:00
twinaphex 78610e4d90 Add RARCH_CMD_LOAD_CONTENT 2014-07-22 03:12:56 +02:00
twinaphex 4b0f3584e0 Create rarch_main_command - command.c could maybe later be made
more generic so we can just do this through command.c functions
locally
2014-07-22 02:14:52 +02:00
twinaphex e84e7f61e0 Create public function rarch_main_deinit_core 2014-07-22 00:31:29 +02:00
twinaphex 6f32841647 Rename g_extern.verbose to g_extern.verbosity to avoid
collisions on OSX
2014-07-18 00:39:31 +02:00
Themaister cdc46ae512 Block libretro input when ENABLE_HOTKEY is held. 2014-07-11 00:26:50 +02:00
Themaister 420a203a02 Reset g_extern path state after game reload. 2014-06-21 10:40:58 +02:00
Themaister 5530de0fb7 Android: Fix handling of libretro_path/libretro_directory. 2014-06-16 21:50:29 +02:00
Themaister edbbacd067 Don't disable SRAM if netplay_is_client is set without netplay. 2014-06-16 18:23:11 +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 5532babfd6 (Overlays) Add explicit overlay_enable option 2014-06-12 22:15:32 +02:00
twinaphex 29d6856244 Take out duplicate freeing of log_file 2014-06-10 19:39:46 +02:00
twinaphex 68963a6eb0 Turbo logic can be uncommented now for RARCH_CONSOLE 2014-06-10 15:57:39 +02:00
twinaphex f7e9f4774d (Menu) Replace more rgui_ references 2014-06-10 02:21:49 +02:00
Themaister 159ddb86d3 Add has_set* state for netplay settings. 2014-06-10 00:01:03 +02:00
Themaister 852e632862 Fix some dubious code in frontend/frontend.c. 2014-06-03 11:36:09 +02:00
twinaphex e717e20643 Have to comment out turbo button functionality again for RARCH_CONSOLE 2014-06-03 07:04:15 +02:00
twinaphex bca8a4c6d7 (GX) Build fixes/style nits 2014-06-03 03:37:13 +02:00
twinaphex ae1e3b3f07 Rewrite rarch_main_wrap - we need a way of getting a valid argc/argv
pair for consoles where we get stupid argc/argv pairs back that need
to be 'converted' into something that RetroArch's PC-style args parsing
can deal with
2014-06-03 01:45:25 +02:00
Themaister 5e76f8ad47 Add perf counters to DSP. 2014-06-01 20:31:35 +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 a5daca5946 (RARCH_CONSOLE) Don't comment out turbo code for RARCH_CONSOLE 2014-05-31 05:35:08 +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
Themaister f5b8ccff4b Avoid set_controller_port unless we use something other than JOYPAD.
Some cores do not properly range check. Avoid needlessly breaking.
2014-05-28 21:05:15 +02:00
Themaister 13428541f4 Don't try to connect libretro devices which won't work. 2014-05-26 13:27:28 +02:00
Themaister 4093933abb Don't override g_extern.verbose CLI argument. 2014-05-26 11:07:59 +02:00
twinaphex ef09cf5aff Replace some more mentions of 'ROM' 2014-05-26 03:11:39 +02:00
Themaister c7eee695ce Remove references to XML shaders. 2014-05-25 23:40:14 +02:00
Themaister 745cab4f4e Fixups for fastforward_ratio and slowmotion_ratio.
Rename to Game Speed Cap in RGUI, more clear.
2014-05-25 13:13:55 +02:00
Themaister addba80c3b Rewrite DSP plugin interface. 2014-05-20 12:28:33 +02:00
Themaister 05eac0c8a2 Add new libretro_directory.
Avoid kinda-weird dual purpose of g_settings.libretro.
2014-05-09 18:51:20 +02:00
Themaister 804626e20d Create abstract interface for FFemu. 2014-05-04 11:48:20 +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 ba46770f3c Rework frontend.c and make it possible to compile without HAVE_MENU
defined again
2014-04-30 04:00:39 +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 45c917afa4 Compile in filters for console ports (HAVE_DYLIB not defined in
Griffin)
2014-04-16 02:09:09 +02:00
Themaister 4e8c3b3bd3 Add perf counter to softfilter. 2014-04-15 19:43:44 +02:00
Themaister c7de0f8b78 Fixup FFmpeg build. 2014-04-15 04:15:19 +02:00
Themaister 4b97de0c9e Replace filter cruft with new stuff. 2014-04-15 00:03:55 +02:00
Themaister 6d6ec8b35a Allow toggling available device types in RGUI. 2014-04-12 14:12:06 +02:00
Themaister a14f0a2760 Log ID as well. 2014-04-12 13:25:48 +02:00
Themaister b4eaf81fed Begin implementing SET_CONTROLLER_INFO. 2014-04-12 13:22:24 +02:00
Themaister 9f5a714615 Rename to SET_SUBSYSTEM_INFO.
Add test case.
2014-04-04 17:04:01 +02:00
Themaister a58cb16367 Fix autosave toggle bug. 2014-04-04 15:19:13 +02:00
Themaister 2d840ef826 Small bugfix and docs fix. 2014-04-04 15:13:44 +02:00
Themaister c81de5119d Initial take on subsystems support. 2014-04-04 14:58:42 +02:00
Themaister bad7f9af82 Check command interface in rarch_input_poll. 2014-03-17 11:34:25 +01:00
Themaister 883708df0f Merge git://github.com/Alcaro/RetroArch into alcaro
Conflicts:
	retroarch.c
	rewind.c
2014-02-23 11:10:25 +01:00
Themaister d896d0f6e4 Optimize state_manager_push a bit.
Avoid redundant memcpy and SSE2 memory diff search.
Might get replaced by Alcaro's implementation soon though.
2014-02-22 13:13:18 +01:00
Alcaro df4ff9718b Declare this one constant. Altering it will make further pulls yield garbage. 2014-02-21 21:51:58 +01:00
Alcaro ef8d2ceb0f Convert this one to an out parameter, to match state_manager_pop. 2014-02-21 21:42:05 +01:00
Alcaro 448a767ba2 Missed another spot... 2014-02-21 19:33:40 +01:00
Themaister 21c383f77a Add initial SET_SYSTEM_AV_INFO environ. 2014-02-20 22:48:31 +01:00
Alcaro 519452ce4f Might as well put this back. No reason to change visible behaviour. 2014-02-18 09:04:16 +01:00
Alcaro d2e95c772b Remove this one. The rewinder is the only user, and with this rewind rewrite, even that is gone. 2014-02-18 08:59:37 +01:00
Alcaro 55fa3d01d4 Fix this part, so we avoid a pointless memcpy. Rename this function. 2014-02-18 08:41:52 +01:00
Alcaro e14c879bcb Trim off this; from now on, the rewinder is responsible for rounding and allocation. 2014-02-18 08:40:16 +01:00
Themaister b86ca166bf Expose more SRAM settings in RGUI.
Also treat save state slot -1 as the "auto save slot".
2014-02-15 11:12:34 +01:00
Themaister d129258c32 Allow toggling fullscreen from bind in RGUI. 2014-02-08 16:27:09 +01:00
Themaister c9b8bfdbbc Simplify parsing of --size. 2014-02-07 09:35:46 +01:00
Themaister 1777056d6f Use the more appropriate __clang_version__. 2014-01-22 16:39:39 +01:00
Themaister 252efff8da Log Git version in verbose logs.
Makes it much easier to figure out which builds users are running when
pasting logs.
2014-01-11 18:54:12 +01:00
Themaister f6643fe12d Push analog dpad mode for autoconfig as well. 2014-01-08 17:47:07 +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
Themaister f61f42c68f Simplify overlay analogs handling. 2014-01-08 13:32:51 +01:00
Themaister 9ab4b2213a Avoid potential overflows with overlay analogs. 2014-01-07 17:43:44 +01:00
Themaister a65db38baf Allows buttons with l_x_plus, etc, to act as analogs.
Matches up with regular input drivers which can map buttons to analogs
as well if the analogs are not used.
2014-01-07 17:37:59 +01:00
Themaister 5b4ebb3fa1 Build fix for overlay.
Compute keyboard mod state once.
Fix C++ 'new' usage.
2014-01-06 19:42:46 +01:00
meancoot 65c368140c (Overlay Keyboard) Handle key events (no character data yet) 2014-01-03 12:56:21 -05:00
meancoot f55bac7f7e (Overlay Keyboard) Use 1 bit per key to store state. 2014-01-02 23:37:18 -05:00
meancoot 1ff9630d74 Add support for mapping keyboard keys to input overlays. 2014-01-02 16:42:28 -05:00
Themaister a60d49293b Remove completely obsoleted "XML map" support.
This is from ancient times and no longer relevant.
2014-01-02 16:01:43 +01:00
twinaphex 0a15a17d44 Update years on all license headers 2014-01-01 01:50:59 +01:00
Themaister e164457c02 Add support for movable overlay elements.
Very useful for visual feedback of analog controls.
2013-12-31 17:15:28 +01:00
Themaister 2be201ecf3 Add volume option.
There's a rudimentary volume option for XBOX1 there though ...
Dunno what to do about that.
2013-12-29 12:01:23 +01:00
Themaister 7bd6599634 Fix -L arg when default libretro is set. 2013-12-28 23:30:20 +01:00
twinaphex ff036066e2 Rework frontend - separate functions now for iterating per frame
and for doing teardown - Emscripten and Apple ports can make use
of this now so we don't need separate frontend implementations
2013-12-28 21:08:30 +01:00
Themaister a750f355f8 Style nits. 2013-12-28 15:31:25 +01:00
Toad King c8677891e1 fix overlay alphas for multiple button presses 2013-12-26 21:39:07 -05:00
Toad King da75ee5a88 don't update overlay ranges until all events are polled 2013-12-26 20:38:12 -05:00
Themaister 9c472e4e9e Disable recording if FFmpeg errors out.
Or we segfault ...
2013-12-21 15:41:06 +01:00
twinaphex 4ba46df0ef (Android) Build fix 2013-12-19 03:45:17 +01:00
Themaister 1c9895611b Rework performance interface.
Avoids super-ugly macros and retroarch-ifdefs.
2013-12-18 19:21:56 +01:00
twinaphex 9852c5dc4c Rewrite perf interface - exposes callbacks now for RETRO_PERFORMANCE_INIT/RETRO_PERFORMANCE_START/RETRO_PERFORMANCE_STOP calls without messy, hardcoded preprocessor-dependent variables in macros - will update cores accordingly too 2013-12-18 19:03:08 +01:00
twinaphex 69a67b3df2 Change RARCH_PERFORMANCE_ macro calls to RETRO_PERFORMANCE 2013-12-17 19:14:57 +01:00
twinaphex 38d785984f Add RETRO_ENVIRONMENT_GET_PERF_INTERFACE to libretro.h 2013-12-17 19:10:40 +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 8963504778 Log udev feature. 2013-12-08 16:07:14 +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 e83d4a6249 (retroarch.c) use strlcpy instead of snprintf / simplify some strings 2013-11-12 10:25:38 +01:00
twinaphex 2dd00822ee Remove dependency on settings_set in retroarch.c 2013-11-11 12:35:20 +01:00
twinaphex 72b32f2c41 (RARCH_CONSOLE) ifndef input_apply_turbo 2013-11-11 10:39:07 +01:00
twinaphex 0faa3fbbde (RARCH_CONSOLE) Compile in SRAM Autosave option in by default
for RARCH_CONSOLE now
2013-11-08 01:54:46 +01:00
twinaphex 2422c61d7a (retroarch.c) Fix typo in log message 2013-11-07 21:47:41 +01:00
twinaphex da8f8b6d63 Get rid of lifecycle_mode_state and use g_extern.lifecycle_state
instead
2013-11-07 21:44:44 +01:00
twinaphex 2f4e415035 (RARCH_CONSOLE) Disable turbo buttons on console - totally borks input 2013-11-07 04:20:20 +01:00
twinaphex d2c87e3039 Convert most C99-style for loop initial declarations to C89-compliant
ones
2013-10-22 15:08:17 +02:00
Themaister a5045e4052 Clarify input_apply_turbo.. 2013-10-13 10:22:23 +02:00
Themaister 9e67406c40 Use skeleton config as basis for new configs. 2013-10-04 15:38:57 +02:00
Themaister 3ed9321468 Update man-page and --help.
Remove an obsolete per-game config support. It doesn't work with the
RGUI concept at all and is mostly just confusing.
2013-10-01 12:08:20 +02:00
twinaphex 46087cc0ef (360) Build fix - now compiles in screenshot code 2013-09-29 18:08:11 +02:00
twinaphex 3b6408036c (RMenu) Take out old RARCH_FRAMEADVANCE hack 2013-09-29 03:58:08 +02:00
twinaphex 5040f852ef Avoid warnings passing rarch_time_t value to rarch_sleep - cast to
unsigned int
2013-09-27 18:43:34 +02:00
Themaister 086caef070 Add input_libretro_device_pN setting.
Allows input device type to be saved in a config, which tremendously helps usability
for PlayStation 1 cores.
2013-09-22 11:09:14 +02:00
twinaphex a565f792a4 Video fullscreen toggle - mutation of g_settings now done through
settings_set
2013-09-19 12:41:02 +02:00
Themaister 8707c4c648 Add screenshot directory option to RGUI. 2013-09-16 23:30:42 +02:00
Themaister bbbe058cad Avoid OSD fonts appearing on screenshots.
Clears message queue and renders a cached frame
before taking screenshot when taking GPU screenshots.
2013-09-16 22:29:07 +02:00
Themaister e540413880 Be more clear if a core doesn't support save states.
For cores which do not support save states, log to OSD in a more clear
way.
2013-09-14 23:21:00 +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
meancoot 149a0f37d0 (Overlay Analog) Coding style fixes 2013-09-05 18:19:07 -04:00
meancoot 21388592ea (Overlay) Add basic analog support 2013-09-05 11:38:00 -04:00
twinaphex 3adfefed24 Fix build (to do with removing RARCH_PERFORMANCE_MODE ifdefs) 2013-08-25 23:38:43 +02:00
twinaphex add527e3d2 Get rid of RARCH_PERFORMANCE_MODE 2013-08-25 22:18:57 +02:00
twinaphex 95f5e6aa96 Add RETRO_ENVIRONMENT_EXEC_ESCAPE -yes, I need this - when we are in
retro_run - we need to escape first before we can get the next libretro
core with input data running. This is not needed when we do exec without
being in the main program loop. Anyway, one does not work for the other -
so we need both.
2013-08-25 19:42:24 +02:00
twinaphex 6a3303d2b4 Need to put extra conditional in when triggering ENVIRON EXEC to
get out of the main iterate loop once so that it can start up
the next core with params
2013-08-25 15:51:42 +02:00
Themaister 9e4cee5b30 Add support for fast forward frame limiting. 2013-08-11 01:09:10 +02: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 bb0993b6eb Fix Android build. 2013-08-11 01:07:30 +02:00
Themaister 8b655f491a Add slow motion check to frame time. 2013-08-11 01:05:33 +02:00
Themaister 6a82db13d5 Fixups for frame time callback. 2013-08-11 01:05:33 +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 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
twinaphex 2323cee6a7 Get rid of MODE_EXIT 2013-07-27 20:34:06 +02:00
twinaphex d215a2a0f5 remove ifdefs around puts PACKAGEVERSION line 2013-07-04 15:06:28 +02:00
twinaphex 77d5190a01 (OSX) Make dummy context file - compile in RetroArch with Griffin 2013-07-04 15:01:38 +02:00
Themaister 40046531f3 Should fix GPU screenshots if last frame was duped. 2013-06-22 00:38:00 +02:00
Themaister 312154d110 Use common rarch_take_screenshot in RGUI.
Adds GPU screenshot support from RGUI by rendering a clean frame
then taking screenshot.

Should also fix screenshot crash when using GL cores.

Always uses g_settings.screenshot_directory path.
I didn't see the purpose of the RARCH_CONSOLE #ifdef. Probably a Wii
hack from way back ...
2013-06-16 13:44:07 +02:00
Themaister 9406b0a771 More explicit logging of FBO errors. 2013-05-18 16:51:10 +01:00
Themaister a9d322350b Clear out all of g_extern.system.
Should clear out all the silly bugs where some interfaces are not cleared out on
reentrancy.
2013-05-07 01:52:53 +02:00
twinaphex 092b2625dd (RMenu/RGUI) Drop MODE_MENU_INGAME 2013-05-05 15:20:45 +02:00
Themaister 99990173cc Can load without ROM in RGUI (HAVE_DYNAMIC).
Not sure how this will work on RARCH_CONSOLE, but it'll probably be
checked for in startup on core load somehow and either start in menu or args->no_rom.
2013-05-02 14:46:05 +02:00
Themaister 197c4db204 Add RETRO_ENVIRONMENT_SET_SUPPORT_NO_GAME.
Allows libretro core to not require a ROM to be loaded.
Kill stdin ROM loading support (pointless these days).
Replace "no ROM on CLI" behavior to be attempting to load a core with no
ROM.
2013-05-01 00:59:43 +02:00
Themaister 1cab391be8 Add SRAM autosave option to RGUI. 2013-04-29 16:12:15 +02:00
Themaister 767ad59857 Support disk append. 2013-04-27 15:49:29 +02:00
Themaister 9e2392051d Refactor libretro device type handling.
Show devices in RGUI.
2013-04-27 12:32:30 +02:00
Themaister 9eda39417f Refactor out disk swapping functions. 2013-04-27 12:03:13 +02:00
Themaister 50c704933a Remove debugging logs. 2013-04-27 00:00:51 +02:00
Themaister ac6c576d29 Drop dependency on delay_timer in RGUI. 2013-04-26 23:52:29 +02:00
Themaister a92ff2a23a Reset optind to 0, not 1.
Seems to cause strange issues ...
2013-04-26 23:06:43 +02:00
Themaister 0e61461c07 Should fix very strange flickering bug. 2013-04-22 21:10:17 +02:00
Themaister 44476bdbfb Logging main_wrap. 2013-04-22 20:35:45 +02:00
Themaister 846557ba21 Start menu if ROM is not passed to rarch_main_wrap. 2013-04-21 01:12:30 +02:00
Themaister 610f33962a Add fullscreen toggle to RGUI.
Drop hotkey handling. Needed to add delay timer hackery in that case.
2013-04-21 00:01:49 +02:00
Themaister fa5e8b646c Preserve sram/state dir on reentrancy. 2013-04-16 12:22:27 +02:00