Closed JPZV closed 1 year ago
Current plans will be to have something like ns_set_sub_type(TYPE). In this way, when the start core function is called, it will use that type and set up the dependent parameters accordingly. Let me know if this suffices and I will be working on this over the next couple weeks.
That would be great, because nowadays I have to set a patch on my repositories as I have this library as a submodule.
Meanwhile, is it possible to delete this line? Because that line forces the controller to be a SNES classic one no matter what. While you create the ns_set_sub_type(TYPE)
function, I can do some workaround with the settings on my projects, at least for now.
New functionality added to change controller type in user-code.
core_ns_start_with_default_type
for starting the core with a default type in case the User didn't selected/saved a type.core_ns_start_with_controller_type
for starting the core with a specific type, overriding the user's preferences.core_ns_start
will callcore_ns_start_with_default_type
withNS_CONTROLLER_TYPE_SNESCLASSIC
.This will allow to use the library as a git submodule without needing to fork or to use any workaround like git patches.
Breaking changes:
core_ns_start
is still present so there will be no compilation error, but it may generate an error on new and current installments, as it'll use the saved controller type which may differ from the physical/original/intended one. I'd suggest to mark it as deprecated and to incite to use eithercore_ns_start_with_default_type
(for customizable hardware) orcore_ns_start_with_controller_type
.