Commit Graph

27 Commits

Author SHA1 Message Date
specialfred453@gmail.com 88545d7d67 Removed the parameter serialization for XBLC. Replaced it with new config settings specifically for XBLC 2025-01-26 17:12:21 -05:00
specialfred453@gmail.com e8b4e8463d Reduced the precision when drawing the Volume value on the UI
Changed naming of "average volume" to "peak volume" to more accurately describe what is being done/represented
Removed the divide by 2 in calc_peak_volume so that the second half of the samples would also be factored when calculating the peak volume in the most recent sample data
Changed references to 128 to use the SDL_MIX_MAXVOLUME preprocessor definition for clarity
Changed the line that caches the peak volume in input_callback to use sizeof(int16_t) instead of 2 for clarity
Changed input_callback to use a local buffer of size XBLC_FIFO_SIZE instead of allocating one at runtime
Changed the get/set volume functions in xblc.h and xblc.c to use floating point values on the interval [0, 1] instead of integers on the range [0, SDL_MIX_MAXVOLUME] because they're used that way everywhere else anyway
Changed the numOutputDevices variable in DrawAudioDeviceSelectComboBox function to num_devices to match the naming scheme and because this function doesn't only work with output devices.
Changed xemu_input_bind to use an if statement instead of a switch. The switch was left behind from before I added the xemu_input_unbind_peripheral function when I was calling xemu_input_unbind_xmu and xemu_input_unbind_xblc directly
2025-01-26 14:47:11 -05:00
specialfred453@gmail.com a64b6a4337 Merge branch 'master' into xblc_gui 2025-01-26 12:43:05 -05:00
Fred Hallock 191bc40f70
xid: Add Xbox Controller S 2025-01-25 20:48:58 -07:00
specialfred453@gmail.com 918634ba00 Added UI for attaching XBLC to expansion port
Converted Audio to use SDL2 Audio instead of QEMU Audio so that users can choose which audio devices to use
2025-01-15 19:14:39 -05:00
Fred Hallock 03f40b1d8e
ui: Support controller peripherals and XMU devices (#1315)
* Added XMU Settings to the Input Screen

* Added Peripherals to config

* Prevent overwriting existing XMUs

* Added blockdev.h to try to fix the MacOS build

* Fixed some issues that antangelo pointed out

* Moved the peripheralType and param vars into the loop

* Moved fatx.h and fatx.c to ui\thirdparty\fatx

* Added Validation for Peripheral Settings

* Fixed some nits that were pointed out

* don't pass NULL into xemu_settings_set_string

* Changes following Matt's recommendations

* Changes to XMU FilePicker

* XMU image auto-bind logic refactor

* renamed peripheralType to peripheral_type

* removed unnecessary calls to g_strdup_printf and g_free

* Cleaned up some comments, removed an unnecessary variable

* handle overwrite prompt in Windows

* Fixed some code format and style inconsistencies

* More formatting fixes

* Fixed a few memory leaks

* qemu_access: check for Read and Write access

* Run clang-format

* Remove unused xemu_new_xmu declaration

* Fix use after free in rebind code
2023-12-18 01:04:14 -05:00
Matt Borgerson a198f22981 include: Drop various qemu-common.h imports 2023-01-23 00:30:40 -07:00
Antonio Abbatangelo d219d92214 vl: Initialize usb daughterboard at machine start 2022-09-09 13:10:44 -07:00
7oxicshadow ebcd5078e4
ui: Make keyboard controller scancode map configurable 2022-05-28 17:59:32 -07:00
Matt Borgerson 9c06980275 ui: Redesign user interface
Introduces a new user interface that looks much nicer, is easier to
navigate with controllers, provides more context to users, and is
scalable. Some additional features are included.

* Adds 'popup menu' with actions that can be used easily from controller
* Adds 'main menu', unifying other configuration dialogs
* Adds port-forwarding user interface
* Adds screenshot feature
* Adds volume control feature
* Adds gamepad auto-bind option
* Adds vsync configuration option
* Adds auto UI scaling
* Adds preferred window size selection
* Adds AV pack selection
* Exposes some existing config items in GUI
2022-05-07 16:09:34 -07:00
Matt Borgerson d14cdbc7ba config: Migrate to genconfig system 2022-04-24 21:15:57 -07:00
Matt Borgerson 6b7721db58 input: Move from haptic to rumble API 2022-04-23 14:56:27 -07:00
Ryzee119 5faa2419e7 input: Add controller internal usb hub 2021-11-19 20:07:41 -07:00
Ryzee119 22912cbbf7 input: Add USB Daughterboard 2021-11-19 20:07:41 -07:00
Matt Borgerson fdd7875051 sdl: Print out SDL_GetError message when subsystem init fails 2021-06-15 22:12:34 -07:00
Matt Borgerson 624cf97095 input: Use forever increasing device id 2021-05-18 04:04:48 -07:00
Matt Borgerson 7284a27d95 input: Update at device poll if not updated recently 2021-03-04 13:52:04 -07:00
Matt Borgerson 6e564854fc xemu: Update copyright 2021-03-03 03:48:11 -07:00
Matt Borgerson 64141f90e1 input: Use QTAILQ for available controllers list 2021-02-10 23:58:59 -07:00
Matt Borgerson 7d2577e161 input: Factor out unused num_available_controllers 2021-02-10 23:58:59 -07:00
Matt Borgerson d3a669faed input: Fixup includes and DPRINTF 2021-02-10 23:58:59 -07:00
Matt Borgerson e67c54c9bf input: Trim whitespace 2021-02-10 23:58:59 -07:00
Jason e063fc37e7
input: Set SDL ALLOW_BACKGROUND_EVENTS hint 2020-11-23 20:45:17 -07:00
Matt Borgerson 2702f45cc3 input: Close gamecontroller handles on disconnect 2020-11-20 14:16:26 -07:00
Jason 8877c4ba98
input: Fix SDL haptic effect length and magnitude 2020-11-17 22:07:24 -07:00
Matt Borgerson a10f24f030 input: Process events for unbound controllers 2020-05-04 07:23:30 -07:00
Matt Borgerson 8632c5d1fa ui: Add xemu input subsystem 2020-05-04 07:13:15 -07:00