Commit Graph

398 Commits

Author SHA1 Message Date
twinaphex 87a21b2e13 Rename ROM history to Content history 2014-07-22 05:01:35 +02:00
twinaphex d9846f2a37 Refactor menu_update_system_info 2014-07-22 04:55:04 +02:00
twinaphex 15f7c66397 menu_common.c - cleanups 2014-07-22 04:50:53 +02:00
twinaphex 8c35a40648 (Menu) Refactor away menu_rom_history_push 2014-07-22 04:48:26 +02:00
twinaphex ec28aca278 Cleanup menu_replace_config 2014-07-22 04:40:35 +02:00
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 6f32841647 Rename g_extern.verbose to g_extern.verbosity to avoid
collisions on OSX
2014-07-18 00:39:31 +02:00
twinaphex a7cb3e22a7 (Menu) Replace some more RGUI strings 2014-06-10 02:44:19 +02:00
twinaphex 966db762cf (Menu) More replacement of namespace prefix 'rgui' with 'menu' 2014-06-10 02:06:10 +02:00
twinaphex 639e6dbe33 (Menu) Make distinction between menu and RGUI more clear - RGUI is just
the display layer driver now
2014-06-10 01:42:26 +02:00
twinaphex f8073b2317 (Menu) Move menu input code to menu_input_line_cb.c 2014-06-08 19:48:38 +02:00
Themaister ddbe5f148d Fix CXX_BUILD. 2014-06-08 14:08:03 +02:00
twinaphex 7063c52e27 (Menu) Take out log messages for load_menu_game 2014-06-03 20:30:33 +02:00
twinaphex 611bb0331f Cleanups to load_menu_game 2014-06-03 02:28:38 +02:00
twinaphex 8deaf2b714 (Menu) Forgot to deinit if main_is_init is true 2014-06-03 02:01:49 +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
twinaphex 06ee8f1bc6 (core_info) Do same here 2014-06-01 02:29:19 +02:00
twinaphex deb737e3c5 Start getting rid of continuous grabbing of pointer from driver.menu
and instead use driver.menu directly from the menu code everywhere
- starting with menu_common - backend and display drivers next
2014-05-31 21:45:16 +02:00
twinaphex 9b545db864 It should be possible to move the definiton of this struct to
driver.h now - now that all the dependencies are gone
2014-05-31 21:31:31 +02:00
twinaphex ecb21743f8 (Menu) Convert rgui->shader into void* too 2014-05-31 21:08:32 +02:00
twinaphex 8f8f757d65 (Menu) Turn core_info_current into void* 2014-05-31 20:37:37 +02:00
twinaphex b4256ac0ed Cleanup menu_common.h 2014-05-31 16:48:07 +02:00
twinaphex 261ac0e3e7 (RARCH_CONSOLE) Now uses same menu input binds for menu as
PC - allows analog sticks to be used for navigation as well
for consoles
2014-05-31 05:41:32 +02:00
twinaphex db0da490fa (Menu) Add Info button - press 'Select' on the RetroPad to
have a message box pop up on an item. It will provide you with
info on the item. Not all items covered yet but it's coming along.
2014-05-31 05:14:44 +02:00
twinaphex d7aa48aa33 (Menu) Don't pass rgui pointer to menu_build_scroll_indices 2014-05-30 22:06:54 +02:00
twinaphex 776d4599e3 (Menu) Fixes crash when toggling fullscreen mode in menu mode 2014-05-30 20:55:59 +02:00
twinaphex 8c1b4a3835 (Menu) Get rid of spammy log 2014-05-30 20:53:49 +02:00
twinaphex b2d9c60613 (Menu) Don't pass menu data to menu_iterate
(Menu) Don't pass menu data to backend - postprocess
2014-05-30 20:53:10 +02:00
twinaphex 779c467191 (Menu) Get rid of passing rgui pointer around to most functions in
menu backend. NOTE: Applying filters seems to be broken on PC
right now, investigate
2014-05-30 20:23:20 +02:00
twinaphex c57f780d9f (Menu) Start undoing passing rgui pointer to every menu-related
function - the only functions where it should actually pass a
pointer instead of just grabbing a pointer from menu.driver should
be in the menu init/deinit functions
2014-05-30 19:34:01 +02:00
twinaphex af440bf545 (Menu) Menu now gets inited from driver.c instead of frontend.c
(Console) Better way to 'restart' instead of using the function
'restart' - call rarch_set_fullscreen instead. 'Restart' function
in driver interface can go now
(Menu) Menu now gets properly deinited/reinited when - say -
rarch_set_fullscreen is toggled or some other state change like this.
If init_assets function of menu_ctx_driver is implemented, this should
ensure all GL/D3D assets get 'cleaned up' prior to teardown of the video
driver, and properly reinited after the video driver is brought up again
2014-05-30 17:49:04 +02:00
twinaphex e1387a7b0b Take out image driver 2014-05-28 21:14:33 +02:00
twinaphex 5da884036e (PS3) Starts to somewhat get back to booting - still a lot of
breakage to go through
2014-05-27 21:38:30 +02:00
twinaphex 1416e47195 (Console) Should bring up menu context in case it fails the first time 2014-05-27 19:21:44 +02:00
twinaphex e69b9c4f8a (Menu) Initialize menu driver during init_drivers_pre 2014-05-26 23:18:49 +02:00
twinaphex c081993fd7 (Menu common) Put variable declarations on top 2014-05-22 06:20:10 +02:00
twinaphex 405d8b4370 (Menu) Refactor menu_defer_core to make it have less dependencies 2014-05-22 06:19:15 +02:00
twinaphex 9e1dfbef29 Split up defer core functionality to menu_common and create
callbacks for menu backend context-specific operations
2014-05-22 03:12:56 +02:00
twinaphex 7773daa125 (Menu) If g_settings.input.analog_dpad_mode is set to ANALOG_DPAD_NONE,
force to ANALOG_DPAD_LSTICK  anyway. Might need some safety checks from
polling input to ensure controls do not go hayware when pad with analog stick
is not properly paired yet.
2014-05-14 04:40:06 +02:00
twinaphex 6fd5248fa6 Revert "(Menu) Analog to Dpad binds now get used for menu navigation when one" -
this code is messed up - we need to come up with a good way to allow analog
movement in the menu to be the same as the D-pad without affecting the
input of the main game
This reverts commit 0280fc769b.
2014-05-14 03:47:11 +02:00
twinaphex 0280fc769b (Menu) Analog to Dpad binds now get used for menu navigation when one
of the analog sticks is bound to the D-pad
2014-05-14 00:19:19 +02:00
twinaphex f656336b7f (Lakka) Use strlcpy/strlcat
(Menu) Abstract menu_init_core_info - we can have different
implementations of this per menu drivers
2014-05-09 21:00:50 +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
twinaphex f26a82a6ae (Menu) Make time/delta variables exposable to display driver
(Lakka) Start implementing iterate function more properly
2014-05-09 17:29:41 +02:00
twinaphex 0454ac623e (Menu) Move 'rgui' global variable to 'driver' struct 2014-05-09 05:47:32 +02:00
twinaphex 3d8d807e6b Refactor a bunch of menu code - menu 'settings' can now be implemented
per-menu context
2014-04-26 01:54:15 +02:00
Themaister 1cc9d10e09 Fix CXX_BUILD. 2014-04-14 09:07:15 +02:00
twinaphex f0f615c38a (OSX) Build fix 2014-04-14 04:00:51 +02:00
Twinaphex f156443e5f (MSVC) Build fix 2014-04-14 02:08:20 -07:00
twinaphex 9dfcded389 (Menu) Refactor menu code -move backend menu code to separate driver 2014-04-14 02:32:54 +02:00
Themaister 64652f5ee9 Use bind mode to differentiate between keyboard/joypad binding. 2014-04-13 20:09:51 +02:00
Themaister 39ef5d8e03 Don't accept hotkeys until key has been released.
Avoid quitting RetroArch immediately after Quit RetroArch bind.
2014-04-13 19:47:32 +02:00
Themaister 255e43966a Implement basic keyboard binding in RGUI. 2014-04-13 12:12:12 +02:00
twinaphex 802bbcb321 (Menu) Add Font Options 2014-04-07 22:12:23 +02:00
twinaphex e779681528 Add Privacy Options 2014-04-06 22:59:16 +02:00
Themaister 2e3ca36010 Allow toggling monitor index in RGUI. 2014-04-06 15:41:53 +02:00
Themaister c81de5119d Initial take on subsystems support. 2014-04-04 14:58:42 +02:00
Themaister ab2040a100 Avoid some confusing opaqueness.
First argument of menu_ctx_init_first must always be const menu_ctx_driver_t**.
2014-04-01 17:42:00 +02:00
twinaphex 6064511cc2 Move menu_ctx variable over to driver struct 2014-04-01 04:03:55 +02:00
twinaphex 454ef3fa28 (menu context) Go through opaque pointers 2014-04-01 03:51:32 +02:00
Themaister 6eb349dca6 Remove passing around video_data inside RGUI.
Makes very little sense to add cruft to the interface
when it also risks using an invalidated video_data ...
2014-03-25 10:19:02 +01:00
Themaister bad7f9af82 Check command interface in rarch_input_poll. 2014-03-17 11:34:25 +01:00
twinaphex 6752687f16 (Menu) Cleanup 2014-03-16 13:55:30 +01:00
twinaphex 767f2a4466 (Menu) Simplify menu_update_libretro_info 2014-03-10 05:50:56 +01:00
twinaphex 451f4823d2 (RARCH_CONSOLE) Set rgui->libretro_dir to default_paths.core_dir 2014-03-10 03:31:00 +01:00
twinaphex be7798a308 (XDK Menu) Forcibly hardcode core path - was giving a lot of
problems
2014-03-10 03:04:18 +01:00
Themaister 171cb7ed79 Quick and dirty fix for fullscreen RGUI crash. 2014-03-09 16:47:36 +01:00
twinaphex 813a2daaa0 (XUI) Should update entries when pushing new dir list 2014-03-08 06:18:47 +01:00
twinaphex 16eb15376d (Menu) Update menu_navigation 2014-03-08 05:48:52 +01:00
twinaphex 40e0b70ee3 (Menu) Put guards around functions that get video_data passed to them 2014-03-07 19:44:38 +01:00
twinaphex 36716706c2 (Menu) Pass video_data pointer to menu functions 2014-03-07 06:28:49 +01:00
twinaphex ef01743ef9 (Xbox 360) Expose Gamma correction option in menu 2014-03-06 05:45:11 +01:00
twinaphex 29293476c1 Ifdef libretro_free_system_info with HAVE_DYNAMIC 2014-03-06 02:14:38 +01:00
twinaphex f7c532ea30 (Xbox 360) Set default libretro info path and default core path 2014-03-06 02:11:08 +01:00
twinaphex ec682695ba (RARCH_CONSOLE) Bake in 'Core Directory' in Path Settings 2014-03-06 00:17:02 +01:00
Toad King 97c7ea07ba fix core information not working on statically linked cores 2014-03-05 16:39:08 -05:00
twinaphex 2b59b2fda0 (Mobile) Don't expose 'Black Frame Insertion' for mobile platforms -
can be dangerous for screens
2014-03-05 18:40:01 +01:00
twinaphex 75fee188e2 (Xbox 1) Refactor Xbox 1-only audio volume setting 2014-03-05 03:40:55 +01:00
Themaister 6e42f4485d Join core info lists with new string_list_join_concat(). 2014-03-04 10:17:00 +01:00
Themaister f54898350b Style nits ... 2014-03-04 09:34:34 +01:00
AndresSM 20d1ccda0a fix spacing again 2014-03-03 18:50:08 -05:00
AndresSM c9ae29e347 fix spacing 2014-03-03 18:47:50 -05:00
AndresSM 511f158255 Merge branch 'master' of github.com:fr500/RetroArch
Conflicts:
	frontend/menu/menu_common.c
2014-03-03 18:45:06 -05:00
AndresSM a863dcdeae changed the layout of the list and add optional flag for BIOS 2014-03-03 18:43:30 -05:00
AndresSM 14381bd033 changed the layout of the list and add optional flag for BIOS 2014-03-03 18:23:56 -05:00
Themaister 5efedf134c And some more nits. 2014-03-03 13:58:14 +01:00
Themaister 344ebb77e9 Fixup style. 2014-03-03 10:11:07 +01:00
Twinaphex 7a19c34ead Merge pull request #587 from fr500/master
change code to match old info file structure to avoid crashes with old i...
2014-03-03 08:02:58 +01:00
AndresSM 508fc65292 Merge remote-tracking branch 'upstream/master' 2014-03-03 01:58:54 -05:00
AndresSM dea3f1ca1f change code to match old info file structure to avoid crashes with old info files
if firmware is numbered from 1, one entry will be missing
2014-03-03 01:57:18 -05:00
Twinaphex ac6801e653 Merge pull request #586 from fr500/master
check if BIOS is present
2014-03-03 07:11:26 +01:00
AndresSM 08fadaaf8c check if BIOS is present 2014-03-03 01:02:29 -05:00
twinaphex 7d178d015a (XUI) Add RGUI_SETTINGS_CORE_INFO 2014-03-03 06:48:09 +01:00
twinaphex 57aadf75b6 (Menu) Take out stray printf 2014-03-03 06:26:58 +01:00
AndresSM 10d90176e1 Add core information menu 2014-03-03 00:22:28 -05:00
Themaister 511bc8b5ec Allow retrieval of core_info_t for selected core.
Refactor a bit to avoid lots of duplicated
libretro_free_system_info/get_system_info, etc.
Also copy the core_info_t struct on core change.
2014-03-02 14:07:07 +01:00
Themaister a13da8da19 Repurpose RSound IP address setting.
It's hardcoded for RSound, but it's actually setting the generic audio device ...
2014-03-02 12:25:38 +01:00
twinaphex f9d21c6804 (Menu) Make 'Save as Shader Preset' option available to non-HAVE_OSK targets as
well
2014-03-02 06:44:32 +01:00
twinaphex 5bb7097fbb (Menu) Add OSK enable option 2014-03-02 06:07:18 +01:00
twinaphex a58820d927 (Menu) You can now input nickname, IP address and TCP/UDP port
with the keyboard
2014-03-02 05:46:33 +01:00
twinaphex 6f19662d75 (Menu) Split up keyboard input line cb code to separate file - menu_input_line_cb 2014-03-02 05:24:57 +01:00
twinaphex 23489132b3 (Menu) VERY WIP - Netplay options. Still lacks way to input a
name/IP address/port with a keyboard callback - also state
bringing up/teardown will need to be handled
2014-03-02 04:46:26 +01:00
twinaphex bca4b77573 (Menu) Isolate menu ptr selection code to separate file menu_navigation.c 2014-02-28 23:14:42 +01:00
twinaphex 6c6fd23a3f (XUI) Use XuiListSetCurVisible instead of XuiListSetCur 2014-02-28 21:58:37 +01:00
twinaphex 450318394a (XUI) Build fixes 2014-02-28 21:55:50 +01:00
twinaphex da3cff4903 (XUI/Menu_common) Set current selection per action 2014-02-28 21:49:46 +01:00
twinaphex 6daf8a1d4f (Menu) Make input_postprocess part of menu_ctx_driver_t 2014-02-28 01:44:03 +01:00
Themaister f49f16b7fb Add missing TURBO_ENABLE. Avoid weird +1 offset. 2014-02-27 08:10:09 +01:00
twinaphex e316a966a5 (RGUI) Make it possible to map all binds from RGUI 2014-02-27 05:25:33 +01:00
Themaister b83bce794f Use consistent casing for some menu entries.
Convention so far is casing every word.
2014-02-25 19:06:02 +01:00
twinaphex df5c88c837 (Menu) Add window compositing disable option in 'General Settings'
(only implemented for Windows Vista+ right now)
2014-02-25 18:47:53 +01:00
twinaphex 180717faab (Menu) Add 'Pause if window focus lost' to General Options 2014-02-25 18:23:20 +01:00
twinaphex 7064845e0e (Menu) Move all uncategorized remaining options to 'General Options' 2014-02-25 18:09:29 +01:00
twinaphex ca067fd31b (Menu) Move Overlay Options up one level 2014-02-25 16:40:12 +01:00
twinaphex a08c6c8303 (Menu) Move Shader Options up one level 2014-02-25 16:04:36 +01:00
Themaister cd597dc247 Make resampler "driver" hook code consistent with rest. 2014-02-25 09:39:48 +01:00
twinaphex 4b1438e4b2 (Menu) Add audio resampler selection to 'Drivers' section 2014-02-25 03:23:50 +01:00
twinaphex cf71da660e (Menu common) Add more runtime checks for checking if video is initialized 2014-02-23 05:02:48 +01:00
twinaphex 94dec420cd (PSP) (Menu common) Add file paths 2014-02-16 17:27:23 +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
twinaphex d22999ab14 Backpot neagix patch - prevent last button input when resuming from
menu
2014-02-01 22:30:31 +01:00
twinaphex 580e05fc0f (Menu) Add menu driver selection 2014-01-27 01:32:05 +01:00
Themaister c90a8bcfec Return to RGUI when core shuts down.
Don't do this on consoles (uses dummy core).
2014-01-23 20:00:25 +01:00
Themaister 2ea94aac37 Remove rgui->base_path.
Completely useless and buggy.
2014-01-12 21:23:38 +01:00
Twinaphex 165698b9f2 Merge pull request #481 from libretro/dpad-map
Analog D-pad mapping
2014-01-08 12:01:39 -08:00
twinaphex f23e41bd17 Safety checks for accessing video_poke function pointers 2014-01-08 19:42:42 +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
twinaphex 2da438bcf0 (PS3) Add paths 2014-01-05 05:00:08 +01:00
Themaister 79cd808e81 Fix broken use of SET_LIBRETRO_PATH. 2014-01-03 21:38:48 +01:00
Themaister 76a6e61fdd Use core-specific config path for RGUI cgp/glslp if applicable.
Avoids some collisions.
2014-01-03 15:31:10 +01:00
Themaister 13a006d147 Restructure per-core configs.
Merging yesterday was probably a bit premature.

One issue I overlooked was that per-core configs were not flushed to disk
when loading a new core on PC. The per-core flushing only happened on
main_exit(), which is only run on application termination. This hence
would only work with consoles with exitspawn.

config_set_defaults() must be called when loading per-core-specifics as
well or lots of options silently leak into other core specific configs
when cores are changed.

The handling with g_extern.config_path and original_config_path was
difficult logic and very error prone considering it was mutated aribitrarily by RGUI.
I've removed the original config path concept and stuck
with that config_path is *only* for global config, and
core_specific_config_path is for core-specifics (which are resolved
during config load). Saves some memory too,
which is always nice.

The block_config_read solution I proposed yesterday was not good after
all (in fact, broken on PC), and the current solution should work better.

"RetroArch Config" option in RGUI now only shows global config.
2014-01-02 17:52:48 +01:00
Toad King e0671aba8b per-core minor fixes 2014-01-01 19:06:06 -05:00
Toad King 8f45063f74 menu support for core specific config 2014-01-01 15:02:57 -05:00
twinaphex 0a15a17d44 Update years on all license headers 2014-01-01 01:50:59 +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
twinaphex 030012f664 (360) Some build fixes 2013-12-29 04:08:42 +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
Toad King 3fd4f21c9a fix check for salamander file in core menu 2013-12-24 22:28:24 -05: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
Toad King 2f46fa4fe9 [GX] input changes work now 2013-12-22 21:07:37 -05:00
twinaphex 742f85eafc Add HAVE_LOCATION - still need to write frontend drivers now for
location
2013-12-19 01:51:51 +01:00
twinaphex 38d785984f Add RETRO_ENVIRONMENT_GET_PERF_INTERFACE to libretro.h 2013-12-17 19:10:40 +01:00
Toad King f291e9c353 make config directory require dynamic libraries for now. fixes issue #420
the way we implement chaning directories involves loading a dummy core, which we can't do on non-dynamic core platforms right now
2013-12-16 15:05:57 -05:00
twinaphex b946a5e302 (Menu) Omit "Threaded Video" for Gamecube/Wii 2013-12-14 02:33:09 +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