mirror of
https://github.com/Lorenzooone/cc3dsfs.git
synced 2026-10-02 03:46:36 -05:00
Optimize/Nisetro: Fix issue with bad reconnection
Some checks are pending
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linux32 flags:32 name:Linux GCC 32 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linux64 flags:64 name:Linux GCC x64 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linuxarm32 flags:arm32 name:Linux GCC ARM 32 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linuxarm64 flags:arm64 name:Linux GCC ARM 64 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:macos name:macOS Apple Silicon os:macos-14]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:win32 flags:-A Win32 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 Win32 os:windows-2022]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:win64 flags:-A x64 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 x64 os:windows-2022]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:winarm64 flags:-A ARM64 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 ARM os:windows-2022]) (push) Waiting to run
CD / Create Pi Mono Setup (push) Blocked by required conditions
CD / Publishing (push) Blocked by required conditions
Some checks are pending
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linux32 flags:32 name:Linux GCC 32 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linux64 flags:64 name:Linux GCC x64 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linuxarm32 flags:arm32 name:Linux GCC ARM 32 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:linuxarm64 flags:arm64 name:Linux GCC ARM 64 os:ubuntu-latest]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:macos name:macOS Apple Silicon os:macos-14]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:win32 flags:-A Win32 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 Win32 os:windows-2022]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:win64 flags:-A x64 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 x64 os:windows-2022]) (push) Waiting to run
CD / ${{ matrix.platform.name }} ${{ matrix.config.name }} (map[flags:-DBUILD_SHARED_LIBS=FALSE name:Static], map[artifact_name:winarm64 flags:-A ARM64 -DCMAKE_PARALLEL_MSVC=TRUE name:Windows VS2022 ARM os:windows-2022]) (push) Waiting to run
CD / Create Pi Mono Setup (push) Blocked by required conditions
CD / Publishing (push) Blocked by required conditions
This commit is contained in:
@@ -84,6 +84,13 @@ static cy_device_device_handlers* usb_reconnect(const cyni_device_usb_device* us
|
||||
return final_handlers;
|
||||
}
|
||||
|
||||
static std::string process_serial_string(const cyni_device_usb_device* usb_device_desc, std::string out_serial) {
|
||||
std::string preamble = "";
|
||||
if((usb_device_desc != NULL) && usb_device_desc->has_bcd_device_serial)
|
||||
preamble = "USB ";
|
||||
return preamble + out_serial;
|
||||
}
|
||||
|
||||
static std::string _cypress_nisetro_get_serial(const cyni_device_usb_device* usb_device_desc, std::string serial, uint16_t bcd_device, int& curr_serial_extra_id) {
|
||||
if((!usb_device_desc->has_bcd_device_serial) && (serial != ""))
|
||||
return serial;
|
||||
@@ -96,10 +103,7 @@ std::string cypress_nisetro_get_serial(const void* usb_device_desc, std::string
|
||||
if(usb_device_desc == NULL)
|
||||
return "";
|
||||
const cyni_device_usb_device* in_usb_device_desc = (const cyni_device_usb_device*)usb_device_desc;
|
||||
std::string preamble = "";
|
||||
if(in_usb_device_desc->has_bcd_device_serial)
|
||||
preamble = "USB ";
|
||||
return preamble + _cypress_nisetro_get_serial(in_usb_device_desc, serial, bcd_device, curr_serial_extra_id);
|
||||
return process_serial_string(in_usb_device_desc, _cypress_nisetro_get_serial(in_usb_device_desc, serial, bcd_device, curr_serial_extra_id));
|
||||
}
|
||||
|
||||
static CaptureDevice _cypress_nisetro_create_device(const cyni_device_usb_device* usb_device_desc, std::string serial, std::string path) {
|
||||
@@ -168,7 +172,7 @@ bool cyni_device_connect_usb(bool print_failed, CaptureData* capture_data, Captu
|
||||
return false;
|
||||
}
|
||||
cypress_nisetro_connection_end(handlers, usb_device_info);
|
||||
std::string new_serial_number = std::to_string(free_fw_id);
|
||||
std::string new_serial_number = process_serial_string(next_usb_device_info, std::to_string(free_fw_id));
|
||||
CaptureDevice new_device;
|
||||
for(int i = 0; i < 20; i++) {
|
||||
default_sleep(500);
|
||||
|
||||
@@ -98,6 +98,13 @@ static cy_device_device_handlers* usb_reconnect(const cyop_device_usb_device* us
|
||||
return final_handlers;
|
||||
}
|
||||
|
||||
static std::string process_serial_string(const cyop_device_usb_device* usb_device_desc, std::string out_serial) {
|
||||
std::string preamble = "";
|
||||
if((usb_device_desc != NULL) && usb_device_desc->has_bcd_device_serial)
|
||||
preamble = "USB ";
|
||||
return preamble + out_serial;
|
||||
}
|
||||
|
||||
static std::string _cypress_optimize_3ds_get_serial(const cyop_device_usb_device* usb_device_desc, std::string serial, uint16_t bcd_device, int& curr_serial_extra_id) {
|
||||
if((!usb_device_desc->has_bcd_device_serial) && (serial != ""))
|
||||
return serial;
|
||||
@@ -110,10 +117,7 @@ std::string cypress_optimize_3ds_get_serial(const void* usb_device_desc, std::st
|
||||
if(usb_device_desc == NULL)
|
||||
return "";
|
||||
const cyop_device_usb_device* in_usb_device_desc = (const cyop_device_usb_device*)usb_device_desc;
|
||||
std::string preamble = "";
|
||||
if(in_usb_device_desc->has_bcd_device_serial)
|
||||
preamble = "USB ";
|
||||
return preamble + _cypress_optimize_3ds_get_serial(in_usb_device_desc, serial, bcd_device, curr_serial_extra_id);
|
||||
return process_serial_string(in_usb_device_desc, _cypress_optimize_3ds_get_serial(in_usb_device_desc, serial, bcd_device, curr_serial_extra_id));
|
||||
}
|
||||
|
||||
static CaptureDevice _cypress_optimize_3ds_create_device(const cyop_device_usb_device* usb_device_desc, std::string serial, std::string path) {
|
||||
@@ -182,7 +186,7 @@ bool cyop_device_connect_usb(bool print_failed, CaptureData* capture_data, Captu
|
||||
return false;
|
||||
}
|
||||
cypress_optimize_3ds_connection_end(handlers, usb_device_info);
|
||||
std::string new_serial_number = std::to_string(free_fw_id);
|
||||
std::string new_serial_number = process_serial_string(next_usb_device_info, std::to_string(free_fw_id));
|
||||
CaptureDevice new_device;
|
||||
for(int i = 0; i < 20; i++) {
|
||||
default_sleep(500);
|
||||
@@ -915,6 +919,8 @@ static std::string read_key_for_device_id_from_file(uint64_t device_id, const cy
|
||||
}
|
||||
|
||||
static void add_key_for_device_id_to_file(uint64_t device_id, std::string key, const cyop_device_usb_device* usb_device_desc) {
|
||||
// This is fine for a limited amount of keys.
|
||||
// It should be optimized if many keys need to be stored...
|
||||
if(usb_device_desc == NULL)
|
||||
return;
|
||||
if(key == "")
|
||||
|
||||
Reference in New Issue
Block a user