mirror of
https://github.com/Lorenzooone/cc3dsfs.git
synced 2026-03-21 17:55:00 -05:00
Version bump - Change settings reset timeout to 10 seconds
Some checks failed
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
CD / Create Pi Mono Setup (push) Has been cancelled
CD / Publishing (push) Has been cancelled
Some checks failed
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
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) Has been cancelled
CD / Create Pi Mono Setup (push) Has been cancelled
CD / Publishing (push) Has been cancelled
This commit is contained in:
parent
8f8473dc45
commit
60c9f81259
|
|
@ -86,16 +86,16 @@ The software has a GUI which exposes all of the available settings. There are al
|
|||
Most of the settings are explained in [Keyboard shortcuts](#Keyboard-shortcuts).
|
||||
|
||||
### Keyboard controls
|
||||
- __Enter key__: Used to open the GUI when it is not shown, as well as to confirm the selection of an option. Holding it for 30 seconds will reset the application to its defaults.
|
||||
- __Enter key__: Used to open the GUI when it is not shown, as well as to confirm the selection of an option. Holding it for 10 seconds will reset the application to its defaults.
|
||||
- __Arrow keys__: Used to change the selected option in the GUI.
|
||||
|
||||
### Mouse controls
|
||||
- __Right click__: Used to open the GUI when it is not shown. Holding it for 30 seconds will reset the application to its defaults.
|
||||
- __Right click__: Used to open the GUI when it is not shown. Holding it for 10 seconds will reset the application to its defaults.
|
||||
- __Left click__: Used to confirm the selection of an option.
|
||||
|
||||
### Joystick controls
|
||||
- __Option/Share buttons__: Used to open the GUI when it is not shown.
|
||||
- __A/B/X/Y buttons__: Used to confirm the selection of an option. Holding B (X on a PS5 controller) for 30 seconds will reset the application to its defaults.
|
||||
- __A/B/X/Y buttons__: Used to confirm the selection of an option. Holding B (X on a PS5 controller) for 10 seconds will reset the application to its defaults.
|
||||
- __Dpad/Sitcks__: Used to change the selected option in the GUI.
|
||||
|
||||
_Note: Currently only tested using a PS5 controller._
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ private:
|
|||
const float touch_long_press_timer = 1.5f;
|
||||
const float mouse_timeout = 5.0f;
|
||||
const float v_sync_timeout = 5.0f;
|
||||
const float bad_resolution_timeout = 30.0f;
|
||||
const float bad_resolution_timeout = 10.0f;
|
||||
const float menu_change_timeout = 0.3f;
|
||||
const float input_data_format_change_timeout = 1.0f;
|
||||
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ static inline void memcpy_data_u16le_origin(uint16_t* dst, uint8_t* src, size_t
|
|||
dst[i] = (src[(i * 2) + 1] << 8) | src[i * 2];
|
||||
}
|
||||
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLE(deinterleaved_rgb565_pixels* out_ptr_top, deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline, int multiplier_top = 1) {
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLE(deinterleaved_rgb565_pixels* out_ptr_top, deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline, int multiplier_top = 1) {
|
||||
//de-interleave pixels
|
||||
const int bottom_pos = 0;
|
||||
const int top_pos = 1;
|
||||
|
|
@ -93,7 +93,7 @@ static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLE(deinterle
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLEMonoTop(deinterleaved_rgb565_pixels* out_ptr_top, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline, int multiplier_top = 1) {
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLEMonoTop(deinterleaved_rgb565_pixels* out_ptr_top, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline, int multiplier_top = 1) {
|
||||
//de-interleave pixels
|
||||
const int top_pos = 1;
|
||||
const size_t real_num_iters = num_iters / INTERLEAVED_RGB565_PIXEL_NUM;
|
||||
|
|
@ -105,7 +105,7 @@ static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLEMonoTop(de
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLEMonoBottom(deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline) {
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLEMonoBottom(deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline) {
|
||||
//de-interleave pixels
|
||||
const int bottom_pos = 0;
|
||||
const size_t real_num_iters = num_iters / INTERLEAVED_RGB565_PIXEL_NUM;
|
||||
|
|
@ -117,7 +117,7 @@ static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptLEMonoBottom
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBE(deinterleaved_rgb565_pixels* out_ptr_top, deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline, int multiplier_top = 1) {
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBE(deinterleaved_rgb565_pixels* out_ptr_top, deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline, int multiplier_top = 1) {
|
||||
//de-interleave pixels
|
||||
const int bottom_pos = 0;
|
||||
const int top_pos = 1;
|
||||
|
|
@ -133,7 +133,7 @@ static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBE(deinterle
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBEMonoTop(deinterleaved_rgb565_pixels* out_ptr_top, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline, int multiplier_top = 1) {
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBEMonoTop(deinterleaved_rgb565_pixels* out_ptr_top, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline, int multiplier_top = 1) {
|
||||
//de-interleave pixels
|
||||
const int top_pos = 1;
|
||||
const size_t real_num_iters = num_iters / INTERLEAVED_RGB565_PIXEL_NUM;
|
||||
|
|
@ -145,7 +145,7 @@ static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBEMonoTop(de
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBEMonoBottom(deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline) {
|
||||
static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBEMonoBottom(deinterleaved_rgb565_pixels* out_ptr_bottom, interleaved_rgb565_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline) {
|
||||
//de-interleave pixels
|
||||
const int bottom_pos = 0;
|
||||
const size_t real_num_iters = num_iters / INTERLEAVED_RGB565_PIXEL_NUM;
|
||||
|
|
@ -157,7 +157,7 @@ static inline void usb_rgb565convertInterleaveVideoToOutputDirectOptBEMonoBottom
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOpt(deinterleaved_rgb888_u16_pixels* out_ptr_top, deinterleaved_rgb888_u16_pixels* out_ptr_bottom, interleaved_rgb888_u16_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline) {
|
||||
static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOpt(deinterleaved_rgb888_u16_pixels* out_ptr_top, deinterleaved_rgb888_u16_pixels* out_ptr_bottom, interleaved_rgb888_u16_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline) {
|
||||
//de-interleave pixels
|
||||
const int bottom_pos = 0;
|
||||
const int top_pos = 1;
|
||||
|
|
@ -172,7 +172,7 @@ static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOpt(deinterl
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOptMonoTop(deinterleaved_rgb888_u16_pixels* out_ptr_top, interleaved_rgb888_u16_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline) {
|
||||
static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOptMonoTop(deinterleaved_rgb888_u16_pixels* out_ptr_top, interleaved_rgb888_u16_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline) {
|
||||
//de-interleave pixels
|
||||
const int top_pos = 1;
|
||||
const size_t real_num_iters = num_iters / INTERLEAVED_RGB888_PIXEL_NUM;
|
||||
|
|
@ -184,7 +184,7 @@ static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOptMonoTop(d
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOptMonoBottom(deinterleaved_rgb888_u16_pixels* out_ptr_bottom, interleaved_rgb888_u16_pixels* in_ptr, uint32_t num_iters, int input_halfline, int output_halfline) {
|
||||
static inline void usb_rgb888convertInterleaveU16VideoToOutputDirectOptMonoBottom(deinterleaved_rgb888_u16_pixels* out_ptr_bottom, interleaved_rgb888_u16_pixels* in_ptr, uint32_t num_iters, size_t input_halfline, size_t output_halfline) {
|
||||
//de-interleave pixels
|
||||
const int bottom_pos = 0;
|
||||
const size_t real_num_iters = num_iters / INTERLEAVED_RGB888_PIXEL_NUM;
|
||||
|
|
@ -266,7 +266,7 @@ static void ftd3_convertVideoToOutput(CaptureReceived *p_in, VideoOutputData *p_
|
|||
}
|
||||
}
|
||||
|
||||
static inline void usb_oldDSconvertVideoToOutputHalfLineDirectOptLE(USBOldDSCaptureReceived *p_in, VideoOutputData *p_out, int input_halfline, int output_halfline) {
|
||||
static inline void usb_oldDSconvertVideoToOutputHalfLineDirectOptLE(USBOldDSCaptureReceived *p_in, VideoOutputData *p_out, size_t input_halfline, size_t output_halfline) {
|
||||
//de-interleave pixels
|
||||
const int pixels_size = sizeof(VideoPixelBGR16);
|
||||
const int num_halflines = 2;
|
||||
|
|
@ -278,7 +278,7 @@ static inline void usb_oldDSconvertVideoToOutputHalfLineDirectOptLE(USBOldDSCapt
|
|||
usb_rgb565convertInterleaveVideoToOutputDirectOptLE(out_ptr_top, out_ptr_bottom, in_ptr, halfline_iters, input_halfline, output_halfline);
|
||||
}
|
||||
|
||||
static inline void usb_oldDSconvertVideoToOutputHalfLineDirectOptBE(USBOldDSCaptureReceived *p_in, VideoOutputData *p_out, int input_halfline, int output_halfline) {
|
||||
static inline void usb_oldDSconvertVideoToOutputHalfLineDirectOptBE(USBOldDSCaptureReceived *p_in, VideoOutputData *p_out, size_t input_halfline, size_t output_halfline) {
|
||||
//de-interleave pixels
|
||||
const int pixels_size = sizeof(VideoPixelBGR16);
|
||||
const int num_halflines = 2;
|
||||
|
|
@ -604,13 +604,13 @@ static void usb_oldDSconvertVideoToOutput(USBOldDSCaptureReceived *p_in, VideoOu
|
|||
memset(p_out->bgr16_video_output_data.screen_data, 0, WIDTH_DS * sizeof(uint16_t));
|
||||
|
||||
if(!is_big_endian) {
|
||||
int input_halfline = 0;
|
||||
for(int i = 0; i < 2; i++) {
|
||||
size_t input_halfline = 0;
|
||||
for(size_t i = 0; i < 2; i++) {
|
||||
if(p_in->frameinfo.half_line_flags[(i >> 3)] & (1 << (i & 7)))
|
||||
usb_oldDSconvertVideoToOutputHalfLineDirectOptLE(p_in, p_out, input_halfline++, i);
|
||||
}
|
||||
|
||||
for(int i = 2; i < HEIGHT_DS * 2; i++) {
|
||||
for(size_t i = 2; i < HEIGHT_DS * 2; i++) {
|
||||
if(p_in->frameinfo.half_line_flags[(i >> 3)] & (1 << (i & 7)))
|
||||
usb_oldDSconvertVideoToOutputHalfLineDirectOptLE(p_in, p_out, input_halfline++, i);
|
||||
else { // deal with missing half-line
|
||||
|
|
@ -622,13 +622,13 @@ static void usb_oldDSconvertVideoToOutput(USBOldDSCaptureReceived *p_in, VideoOu
|
|||
}
|
||||
}
|
||||
else {
|
||||
int input_halfline = 0;
|
||||
for(int i = 0; i < 2; i++) {
|
||||
size_t input_halfline = 0;
|
||||
for(size_t i = 0; i < 2; i++) {
|
||||
if(p_in->frameinfo.half_line_flags[(i >> 3)] & (1 << (i & 7)))
|
||||
usb_oldDSconvertVideoToOutputHalfLineDirectOptBE(p_in, p_out, input_halfline++, i);
|
||||
}
|
||||
|
||||
for(int i = 2; i < HEIGHT_DS * 2; i++) {
|
||||
for(size_t i = 2; i < HEIGHT_DS * 2; i++) {
|
||||
if(p_in->frameinfo.half_line_flags[(i >> 3)] & (1 << (i & 7)))
|
||||
usb_oldDSconvertVideoToOutputHalfLineDirectOptBE(p_in, p_out, input_halfline++, i);
|
||||
else { // deal with missing half-line
|
||||
|
|
@ -641,10 +641,10 @@ static void usb_oldDSconvertVideoToOutput(USBOldDSCaptureReceived *p_in, VideoOu
|
|||
}
|
||||
#else
|
||||
if(!is_big_endian)
|
||||
for(int i = 0; i < HEIGHT_DS * 2; i++)
|
||||
for(size_t i = 0; i < HEIGHT_DS * 2; i++)
|
||||
usb_oldDSconvertVideoToOutputHalfLineDirectOptLE(p_in, p_out, i, i);
|
||||
else
|
||||
for(int i = 0; i < HEIGHT_DS * 2; i++)
|
||||
for(size_t i = 0; i < HEIGHT_DS * 2; i++)
|
||||
usb_oldDSconvertVideoToOutputHalfLineDirectOptBE(p_in, p_out, i, i);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@
|
|||
#define APP_VERSION_MAJOR 1
|
||||
#define APP_VERSION_MINOR 3
|
||||
#define APP_VERSION_REVISION 0
|
||||
#define APP_VERSION_SUBREVISION 1
|
||||
#ifdef RASPI
|
||||
#define APP_VERSION_LETTER R
|
||||
#else
|
||||
|
|
@ -306,6 +307,9 @@ void complete_threads(void) {
|
|||
|
||||
std::string get_version_string(bool get_letter) {
|
||||
std::string version_str = std::to_string(APP_VERSION_MAJOR) + "." + std::to_string(APP_VERSION_MINOR) + "." + std::to_string(APP_VERSION_REVISION);
|
||||
#ifdef APP_VERSION_SUBREVISION
|
||||
version_str += "." + std::to_string(APP_VERSION_SUBREVISION);
|
||||
#endif
|
||||
if(get_letter)
|
||||
return version_str + xstr(APP_VERSION_LETTER);
|
||||
return version_str;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user