Commit Graph

360 Commits

Author SHA1 Message Date
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
Themaister 476d6cef88 Set has_set_*_path on reentrancy. 2013-04-16 09:41:47 +02:00
Themaister 8c58ff191a Fix strange use of pointers in screenshot code. 2013-04-14 23:14:38 +02:00
Themaister 0ca210f99d Document behavior with no args. 2013-04-14 22:41:43 +02:00
Themaister 7923ac4849 If run with no args, start menu. 2013-04-14 19:23:42 +02:00
Themaister c9a02273bb Check for fullscreen in RGUI. 2013-04-14 16:40:17 +02:00
Themaister 1395c32937 Add dummy core loading. 2013-04-14 16:29:30 +02:00
Themaister f968ee6527 Refactor nonblock states.
Preserve nonblock state better across reinits, etc.
Try to keep vsync in RGUI.
2013-04-14 00:56:55 +02:00
Themaister e389220df8 Refactor frame_counter.
Graphics drivers get the task of updating this.
If threaded driver is used, main thread cannot update the counter
due to race conditions.
2013-04-13 14:28:12 +02:00
twinaphex da8bbde11d Simplify some _WIN32 includes 2013-04-11 22:35:15 +02:00