skyfloogle / red-viper

A Virtual Boy emulator for the 3DS
764 stars 17 forks source link

Adding custom control scheme. #67

Closed nevumx closed 1 month ago

nevumx commented 1 month ago

After much deliberation, (https://github.com/skyfloogle/red-viper/pull/65) I present the completely customizable hardware button scheme! It starts in the "Controls" menu, where you can select either the "Preset" scheme, 2024-05-22_18-54-26 654_bot And selecting "Configure Scheme" will take you to the old "Controls" menu, as before, 2024-05-05_20-19-12 460_bot BUT, selecting the "Custom" control scheme 2024-05-22_18-54-35 364_bot And selecting "Configure Scheme" will take you to the new-and-improved, completely customizable 3DS-to-VB hardware button mapping screen, which looks like this on new 3DS: 2024-05-22_18-57-10 335_bot and like this on the old 3DS: 2024-05-22_18-57-41 272_bot Which shows you at a glance what all the 3DS-to-VB button mappings are, and then selecting one of those mapping buttons takes you to the VB button assignment screen that looks like this: 2024-05-22_18-55-19 791_bot Which tells you what 3DS button you are currently mapping, and what VB button it is currently mapped to, and lets you map it to any other VB button! Enjoy!

NOTE!!! I have only tested this on an OLD 3DS! It needs to be tested on a NEW 3DS before merging please!

nevumx commented 1 month ago

@skyfloogle, continuing from https://github.com/skyfloogle/red-viper/pull/65, this PR currently just removes the touch screen buttons if the custom control scheme is active. I am really hesitant to add more buttons to the 3DS mapping screen, so why don't I just revert the code that removes the touchscreen buttons, and puts the "Switch" button back? 2024-05-22_18-56-26 654_bot

skyfloogle commented 1 month ago

Yeah now that I see the map text in there it's probably best to just do that.

nevumx commented 1 month ago

Yeah now that I see the map text in there it's probably best to just do that.

@skyfloogle done.

skyfloogle commented 1 month ago

Got confirmation that it works on N3DS. LGTM, I can take it from here. Thank you for putting this together!