Commit Graph

659 Commits

Author SHA1 Message Date
twinaphex 0a15a17d44 Update years on all license headers 2014-01-01 01:50:59 +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
twinaphex 75a6db27b4 (GX/PS3) Reimplement menu binds 2013-12-26 20:11:33 +01:00
Themaister b23ff3b663 Refactor content_directory.
It shouldn't be RGUI browser dir. Instead it is a more developer centric
option for when libretro apps are distributed (along with RetroArch for
example). Also facilitates a standardized assets folder later on if
applicable.
2013-12-26 02:03:11 +01:00
twinaphex 204113e389 Add environ callback to expose 'Content Directory' path to core -
and refactor g_settings.rgui_browser_directory
2013-12-25 02:31:35 +01:00
twinaphex ccd2246331 (Apple) Build fixes 2013-12-19 03:16:13 +01:00
twinaphex dfe42f4026 (Location) Add g_extern.system handle to retro_location_callback 2013-12-19 02:54:46 +01:00
twinaphex 742f85eafc Add HAVE_LOCATION - still need to write frontend drivers now for
location
2013-12-19 01:51:51 +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 38d785984f Add RETRO_ENVIRONMENT_GET_PERF_INTERFACE to libretro.h 2013-12-17 19:10:40 +01:00
twinaphex ea0c488055 Bump up version to 0.9.9.7 2013-12-13 01:14:08 +01:00
twinaphex eacc193d74 (GX) Rewrite audio interleaving
(GX) Make menu_binds variable Wii-only for now
(Menu) Add toggleable autodetect_enable for input
2013-12-12 22:10:11 +01:00
twinaphex 21ae4c24af (Wii) Menu now takes input again from Gamecube pad, Wiimote, Wiimote + Classic
and Nunchuk
2013-12-12 20:50:42 +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 d21046ace8 Add keyboard layout support to udev.
Adds input_keyboard_layout setting.
2013-12-08 16:05:05 +01:00
twinaphex 6828183b64 (OSK) Move runtime state (OSK callbacks) to g_extern 2013-11-16 15:54:50 +01:00
twinaphex 9558a47ada (PS3 RGUI) Working OSK input 2013-11-15 23:19:44 +01:00
twinaphex d87c20feee (PS3) Get rid of ps3_input.h 2013-11-13 00:41:03 +01:00
twinaphex aec049c803 (OSK) Refactor - (Onscreen Keyboard) - PS3-only backend for now -
I will make an overlay-based backend soon too for all other platforms
2013-11-13 00:27:31 +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 f8d44c6e60 (Camera) Add camera driver init/deinit when HAVE_CAMERA is defined 2013-11-11 14:26:57 +01:00
twinaphex 82f548a969 Refactor out settings_set 2013-11-11 12:56:38 +01:00
twinaphex f8c37fc933 (Menu) Simplify menu preprocessor conditionals - there is now
one common catch-all define called HAVE_MENU
2013-11-08 04:36:47 +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 9ec02f0668 (RARCH_CONSOLE) Build fix - move PATH_MAX to miscellaneous.h 2013-11-06 22:01:23 +01:00
twinaphex 2c2542ff63 Rename message.c/message.h to message_queue.c/message_queue.h 2013-11-06 15:08:54 +01:00
twinaphex 389f255227 Make hash.c dependent on miscellaneous.h and not on general.h 2013-11-06 14:55:42 +01:00
twinaphex cf20416aab Make file_path.c more self-contained.h 2013-11-06 14:21:12 +01:00
twinaphex 62737026f6 (frontend) Add more code that should allow for Emscripten support
in frontend.c
2013-11-04 13:08:19 +01:00
twinaphex 4f7ebbd964 (Frontend) Remove ifdef 2013-11-03 06:14:02 +01:00
twinaphex 310f404747 Get rid of MODE_INFO_DRAW 2013-10-11 01:28:26 +02:00
twinaphex 849cfb680e Saves 'Show Framerate' setting to config file now too 2013-10-11 01:19:54 +02:00
twinaphex 549ce2bb6c Add seperate directory for libretro core info files (needed for
Android)
2013-10-11 00:18:11 +02:00
twinaphex abb829283b Take out messy Dpad emulation code - this will require an entire
rewrite where we come up with a solution that works the same across
console/PC/mobile
2013-10-05 20:55:37 +00:00
Themaister cf7232160b Only show start screen if rgui_show_start_screen is set.
Default to true, and set to false on first time.
2013-10-05 11:11:43 +02:00
twinaphex 0c5a47bc63 Remove config_save_keybinds 2013-09-30 21:51:41 +02:00
twinaphex 64dc9513ae (RMenu/RGUI) Get rid of MODE_MENU_INGAME_EXIT 2013-09-30 00:09:40 +02:00
twinaphex 48c042d56c (360) More build fixes 2013-09-29 18:04:56 +02:00
twinaphex a3559645b2 (RMenu) Get rid of RMenu frame advance - we will use RetroArch's
frame advance functionality from now on - this hacky stuff can go
2013-09-29 03:36:51 +02:00
Themaister ce6de72181 Some cleanups in settings saving/load defaults. 2013-09-27 00:18:17 +02:00
Themaister a01ef18f80 Add RETRO_ENVIRONMENT_GET_RUMBLE_INTERFACE. 2013-09-25 23:21:32 +02:00
Themaister 841d8fa8e1 Add video_rotation.
Replaces g_extern.console.screen.orientation.
Rotation semantics have slightly changed to be more composable.
The rotation is now video_rotation + rotation set by cores themselves
(if allowed).

The config is now also saved properly.
2013-09-22 11:45:04 +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
twinaphex 1fc1014448 More g_settings manipulation moved over to set_settings 2013-09-19 12:24:12 +02:00
twinaphex 81280896ed Move more g_settings manipulation to settings.c (settings_set) 2013-09-19 11:38:12 +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
Themaister b2bf3c12de Add swap_interval support.
Again, mostly useful for 120Hz monitors, and/or playing content which is
a fraction of monitor refresh rate.
2013-09-01 13:20:10 +02:00
Themaister 62c34c7871 Add black_frame_insertion support for 120 Hz monitors. 2013-08-30 09:35:13 +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 73cb566620 "Revert" audio buffer behavior on Android.
Add audio_block_frames setting (only used by OpenSL atm).
2013-08-24 12:04:47 +02:00
twinaphex 963f206456 Bump to version 0.9.9.6 2013-08-16 03:57:29 +02:00
twinaphex 6de6a793ab (Android Phoenix) Include popup about asset extraction
Bump up to version 0.9.9.5
2013-08-15 00:13:08 +02:00
meancoot 9e2e135d19 (Apple) Get rid of some hacks in the frontend code. 2013-08-14 00:48:58 -04:00
Themaister 9e4cee5b30 Add support for fast forward frame limiting. 2013-08-11 01:09:10 +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
twinaphex dea236a569 Get rid of MODE_INIT 2013-07-27 20:40:02 +02:00
twinaphex 2323cee6a7 Get rid of MODE_EXIT 2013-07-27 20:34:06 +02:00
twinaphex 3e3e6ed976 Get rid of MODE_VIDEO_PAL_VSYNC_BLOCK 2013-07-27 20:14:29 +02:00
twinaphex 248d4e8084 Get rid of MODE_OSK_DRAW 2013-07-27 20:12:46 +02:00
twinaphex d3acd123f1 (APPLE) Build fixes for new frontend.c 2013-07-16 22:44:34 +02:00
twinaphex a442e30c71 (Playbook) Updates to RetroArch Blackberry Playbook solution 2013-07-06 19:18:41 +02:00
twinaphex 77d5190a01 (OSX) Make dummy context file - compile in RetroArch with Griffin 2013-07-04 15:01:38 +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 bb3bac7e0d Fix ROM history being deleted when ROM includes ;.
Using ';' as a delimiter in history file was a mistake as it breaks
when files have this file included. Instead, split on newline.

To avoid reading broken history files, the history file path is
changed.

Also add game_history_path/size to config.
2013-06-09 22:24:30 +02:00
twinaphex a71a6a4749 (RMenu/RGUI) Console changes - menu should always run with vsync on +
remove video throttle option
2013-06-02 23:29:28 +02:00
Themaister 43a6346d26 Adds video_hard_sync_frames.
Allows to control the maximum amount of frames that can be queued on
GPU.
2013-05-26 13:43:24 +02:00
twinaphex ce376ef7ea (QNX/iOS) Set default overlay directory for iOS and Blackberry QNX -
note - what to do on Android with /data/data/org.retroarch/cache/Overlays?
Can't seem to access or do anything wih this path on a Galaxy S3
2013-05-25 18:08:42 +02:00
twinaphex 0977917837 (RGUI) Overlay directory path can now be set (and setting will be
saved)
2013-05-22 22:31:16 +02:00
twinaphex 79ea30f54f Introduce config_save_on_exit 2013-05-22 15:35:28 +02:00
twinaphex 69e2bbd57e (RGUI) Add Overlay Scale option - when downscaling, doesn't seem to
update the hitboxes
2013-05-17 23:37:48 +02:00
twinaphex 50b9248624 (QNX/BB) Save config file at exit - compile in config_save_file
for all targets from now on
2013-05-11 02:19:09 +02: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 457a1f8036 (RMenu/RGUI) Take out unused defines 2013-05-05 16:38:09 +02:00
twinaphex 40ba6cf9e2 (GX/RMenu) Have per-core configuration use g_extern.input_config_path - have
RMenu use it as well
2013-05-05 16:29:32 +02:00
twinaphex 6a1eb0c0b1 (PS3/RMenu) Move oskutil_handle to menu_common.h 2013-05-05 16:12:06 +02:00
twinaphex 9c3d943600 (RGUI/RMenu) Get rid of SRAM/Savestate dir enable - obsolete now 2013-05-05 16:02:57 +02:00
twinaphex 092b2625dd (RMenu/RGUI) Drop MODE_MENU_INGAME 2013-05-05 15:20:45 +02:00
Themaister b323640d7c Make joypad driver configurable. 2013-05-04 10:24:15 +02:00
Themaister 741ed2cc03 Add experimental video_hard_sync. 2013-05-03 14:04:29 +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
twinaphex 6cee86c768 (RMenu) Get rid of main_wrap savestate_dir/sram_dir 2013-04-29 05:44:32 +02:00
twinaphex 4a772c3fa8 (Wii) Working Load Game History 2013-04-29 03:05:46 +02:00
twinaphex 63ba647018 Move all of the code to menu_common.c to avoid code duplication
across frontends
2013-04-28 16:38:13 +02:00
twinaphex cd9c6aa95d Drop delay_timer 2013-04-27 21:27:41 +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 f06f6e544e Don't spam OSD messages for autoconfigure. 2013-04-26 15:03:09 +02:00
Themaister cca7fce89c Add joypad autoconfig support. 2013-04-26 14:48:48 +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 7120e5842d Add integer scale to RGUI. 2013-04-20 11:48:26 +02:00
twinaphex 96f2ecce20 (RMenu/RGUI) Move filebrowser/menu stack initialization to upper-layer
menu_init() function
2013-04-18 18:33:03 +02:00
Themaister fa5e8b646c Preserve sram/state dir on reentrancy. 2013-04-16 12:22:27 +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
twinaphex 6e56c552b4 (RMenu) Use g_settings.video.shader_path - properly set g_settings.video.shader_enable
based on return of video_set_shader_func - remove g_extern.file_state.cgp_path
2013-04-14 15:43:02 +02:00
Themaister 882b7ee889 Remove references to audio_rate_step.
Not used anymore.
2013-04-14 13:21:12 +02:00
twinaphex 53d5678b85 (RMenu) Take out RMENU_LOW_RAM_MODE 2013-04-13 16:32:40 +02:00
twinaphex c51347c532 Drop MODE_VIDEO_SCREENSHOTS_ENABLE 2013-04-13 09:09:56 +02:00
twinaphex da8bbde11d Simplify some _WIN32 includes 2013-04-11 22:35:15 +02:00
twinaphex 74edbf7339 (RMenu XUI / 360) Made RMenu XUI independent of MODE_MENU_DRAW - MODE_MENU_DRAW
removed
2013-04-11 16:38:41 +02:00
twinaphex 43c9195a77 Get rid of rarch_position_t structure and move RMenu texture to
rmenu.c instead of somewhere in g_extern global
2013-04-10 04:26:18 +02:00
Themaister eaecc6d6f5 Remove some references to configurability of SINC. 2013-04-07 10:33:46 +02:00
Themaister 4a8b3599bc Refactor out cg_shader_path, xml_shader_path.
Make shader paths uniform in shader_path.
2013-04-07 01:46:06 +02:00
twinaphex 909122122d Take out obsolete console-style overscan options - just use
Resize Mode instead
2013-04-07 01:23:10 +02:00
twinaphex 1c5144f9bd (RMenu) Move RMenu logic out of graphics driver context files 2013-04-06 17:44:07 +02:00
twinaphex eb0feac9e3 (PS3/All) Purge fixed-style shaders again - this time avoiding
breakage on PS3. Maister -you will need to redo shader_parse.c
again though - and this time I need to test it on PS3 to avoid
a regression that happened two pages prior again
2013-04-06 05:46:09 +02:00
twinaphex 58b6de008b Revert "Purge fixed-style second_pass_shader."
This reverts commit 160bbf0218.
2013-04-06 03:54:38 +02:00
twinaphex 20f339ec23 Revert "Get rid of MODE_LOAD_SECOND_SHADER id"
This reverts commit c28e99bf29.
2013-04-06 03:52:49 +02:00
twinaphex c28e99bf29 Get rid of MODE_LOAD_SECOND_SHADER id 2013-04-06 00:34:43 +02:00
Themaister 160bbf0218 Purge fixed-style second_pass_shader. 2013-04-06 00:03:28 +02:00
Themaister cf92211254 Update overlay when in RGUI. 2013-04-04 23:10:38 +02:00
Themaister 77164d18ca Begin adding core options interface. 2013-04-04 13:58:30 +02:00
Themaister 3b392dfcd6 Rename bsnes_shader_path to xml_shader_path. 2013-04-02 22:40:26 +02:00
Hans-Kristian Arntzen ebd7dcf721 Merge pull request #169 from Themaister/gl-render
HW GL render for libretro.
2013-03-30 06:33:53 -07:00
twinaphex 39c0ed745c (PS3) Get rid of QUICKMENU_TOGGLE define - was surpassing 64 entries
on PS3 - now going to do 'menu toggle behavior' logic instead -
menu toggle now triggers ingame menu - will be configurable
2013-03-30 07:19:42 +01:00
twinaphex 426b3a255d Revert "(PS3) Add third-pass shaders (ifdeffed for PS3 for now - could" -
going to do this better

This reverts commit 8b4e6bed93.
2013-03-29 01:55:08 +01:00
twinaphex 8b4e6bed93 (PS3) Add third-pass shaders (ifdeffed for PS3 for now - could
be added to PC as well)
2013-03-28 20:59:49 +01:00
Themaister af40f3e9b8 Add initial GL direct rendering test. 2013-03-27 16:15:15 +01:00
twinaphex 6d8871c76c Combine menu_settings_set and menu_settings_set_default and
move to settings.c
2013-03-23 17:21:42 +01:00
twinaphex 82d80cf24f (PS3) Multiman cleanups 2013-03-23 05:17:39 +01:00
Themaister 51b5a2df5c Refactor aspect_ratio member.
Mutate in g_extern.system.aspect_ratio to avoid
getting wrong aspect ratio on reentrancy.
2013-03-17 22:05:15 +01:00
Themaister aa24755956 Make initial RGUI directory configurable. 2013-03-17 21:39:28 +01:00
twinaphex 595e591607 (RARCH_CONSOLE) Move sound_mode_enums to general.h 2013-03-17 18:16:34 +01:00
twinaphex ad2cd4e492 Revert "Remove platform-specific MAX_PADS - use global define MAX_PLAYERS"
This reverts commit fb1355b975.
2013-03-16 17:51:45 +01:00
twinaphex fb1355b975 Remove platform-specific MAX_PADS - use global define MAX_PLAYERS
instead and customize it for certain ports
2013-03-16 17:13:28 +01:00
Themaister e3c85b174c Can toggle rewind enable in runtime. 2013-03-16 14:28:34 +01:00
Themaister 12cc1c43d4 Can almost run RGUI on PC.
Input in menu is broken. Binds are set up wrongly for PC.
2013-03-16 10:35:22 +01:00
twinaphex 0166ce4585 (RGUI) RGUI input code now no longer GEKKO-specific 2013-03-15 01:22:52 +01:00
twinaphex ede829c354 Refactor set_default_keybinds callback into set_keybinds - remove
set_analog_dpad_mapping and have it go through set_keybinds - expand
functionality of set_keybinds
2013-03-14 02:24:57 +01:00
twinaphex 4bd0999940 Remove rarch_input_set_default_keybinds - merge with function
pointer set_default_keybind_lut
2013-03-13 16:06:13 +01:00
twinaphex 8f5a49dc7e Refactor default_binds - now becomes a member ni retro_keybind
called def_joykey
2013-03-13 15:34:33 +01:00
twinaphex 801202a2fd (Input) Remove defunct map_dpad_to_stick 2013-03-12 23:49:45 +01:00
Themaister 7b6bf22ac6 Add rarch_bits_t. 2013-03-10 01:43:57 +01:00
Themaister 272ef70895 Merge branch 'master' into cd-swap 2013-03-09 09:27:14 +01:00
twinaphex 6899434609 (Android) Add back button behavior option 2013-03-07 15:21:17 +01:00
twinaphex 2d4d9d181e (Android) Add explicit runtime hack for Xperia Play so that
AKEYCODE_BACK behavior is not contingent on AKeyMeta (which
could produce problems on other pads). Hopefully should fix
some issues
2013-03-02 11:27:24 +01:00
twinaphex f72a505dbe Split up main() function to frontend/frontend.c 2013-02-25 07:01:16 +01:00
twinaphex 343a85c6dc (Playbook) Add Playbook ifdefs - cut down on compilation errors 2013-02-25 01:19:12 +01:00
Themaister 0d1d275227 Merge branch 'master' into cd-swap 2013-02-23 14:50:33 +01:00
Themaister eb0476ffab Add configurable GL context. 2013-02-23 14:50:18 +01:00
Themaister e3dfba2c34 Add preliminary disk swapping interface.
Works with Mednafen's disk swapping model.
2013-02-21 23:44:07 +01:00
Squarepusher bd4d97337c Merge pull request #139 from Themaister/thread_video
Threaded video driver
2013-02-19 14:17:00 -08:00
twinaphex 3fe68149a6 (RMenu) Improve Low RAM mode for RMenu 2013-02-17 22:01:08 +01:00