@@ -48,10 +48,15 @@ int process_inputs(int limit, int* offset, int* index, int noscroll) {
4848
4949 int ret = 0 ;
5050 while (true) {
51+
52+ VIDEO_WaitVSync ();
53+ PAD_ScanPads ();
5154 WPAD_ScanPads ();
5255
5356 u32 pressed = WPAD_ButtonsDown (0 );
54- if (pressed & WPAD_BUTTON_DOWN || (noscroll && (pressed & WPAD_BUTTON_RIGHT ))) {
57+ u16 gcpressed = PAD_ButtonsDown (0 );
58+
59+ if ( ((pressed & WPAD_BUTTON_DOWN ) || (gcpressed & PAD_BUTTON_DOWN )) || (noscroll && ((pressed & WPAD_BUTTON_RIGHT ) || (gcpressed & PAD_BUTTON_RIGHT )))) {
5560 (* index )++ ;
5661 if (noscroll ) (* index ) = endOfIndex ;
5762 if (* (int * )index >= endOfIndex ) {
@@ -62,7 +67,7 @@ int process_inputs(int limit, int* offset, int* index, int noscroll) {
6267 ret = 4 ;
6368 break ;
6469 }
65- else if (pressed & WPAD_BUTTON_UP || (noscroll && (pressed & WPAD_BUTTON_LEFT ))) {
70+ else if ((( pressed & WPAD_BUTTON_UP ) || (gcpressed & PAD_BUTTON_UP )) || ( noscroll && (( pressed & WPAD_BUTTON_LEFT ) || ( gcpressed & PAD_BUTTON_LEFT ) ))) {
6671 (* index )-- ;
6772 if (noscroll ) (* index ) = * (int * )offset - 1 ;
6873 if (* (int * )index < * (int * )offset ) {
@@ -73,33 +78,33 @@ int process_inputs(int limit, int* offset, int* index, int noscroll) {
7378 ret = 5 ;
7479 break ;
7580 }
76- else if (!noscroll && pressed & WPAD_BUTTON_LEFT ) {
81+ else if (!noscroll && (( pressed & WPAD_BUTTON_LEFT ) || ( gcpressed & PAD_BUTTON_LEFT )) ) {
7782 (* index ) -= canDisplayAmount ;
7883 (* offset ) -= canDisplayAmount ;
7984 if (* (int * )index < 0 ) (* index ) = 0 ;
8085 if (* (int * )offset < 0 ) (* offset ) = 0 ;
8186 break ;
8287 }
83- else if (!noscroll && pressed & WPAD_BUTTON_RIGHT ) {
88+ else if (!noscroll && (( pressed & WPAD_BUTTON_RIGHT ) || ( gcpressed & PAD_BUTTON_RIGHT )) ) {
8489 (* index ) += canDisplayAmount ;
8590 (* offset ) += canDisplayAmount ;
8691 if (* (int * )index >= limit ) (* index ) = limit - 1 ;
8792 if (* (int * )offset > maxOffset ) (* offset ) = maxOffset ;
8893 break ;
8994 }
90- else if (pressed & WPAD_BUTTON_HOME ) {
95+ else if (( pressed & WPAD_BUTTON_HOME ) || ( gcpressed & PAD_BUTTON_START ) ) {
9196 ret = -1 ;
9297 break ;
9398 }
94- else if (pressed & WPAD_BUTTON_A ) {
99+ else if ((( pressed & WPAD_BUTTON_A ) || ( gcpressed & PAD_BUTTON_A )) ) {
95100 ret = 1 ;
96101 break ;
97102 }
98- else if (pressed & WPAD_BUTTON_B ) {
103+ else if (( pressed & WPAD_BUTTON_B ) || ( gcpressed & PAD_BUTTON_B ) ) {
99104 ret = 2 ;
100105 break ;
101106 }
102- else if (pressed & WPAD_BUTTON_1 ) {
107+ else if (( pressed & WPAD_BUTTON_1 ) || ( gcpressed & PAD_BUTTON_X ) ) {
103108 ret = 3 ;
104109 break ;
105110 }
@@ -252,7 +257,7 @@ void download_app(const char* appname, const char* _hostname, json_t* app, char*
252257 check = opendir (name );
253258 if (!check ) {
254259 if (mkdir (name , 0600 ) != 0 ) {
255- printf ("\ncreating directory %s failed - home to exit\n" , name );
260+ printf ("\ncreating directory %s failed - HOME (Start) to exit\n" , name );
256261 home_exit (true);
257262 }
258263 }
@@ -307,8 +312,10 @@ void download_app(const char* appname, const char* _hostname, json_t* app, char*
307312 printf ("\x1b[%d;%dH Press any button to continue." , 28 - OVERSCAN_Y , 43 - OVERSCAN_X );
308313
309314 while (true) {
315+ VIDEO_WaitVSync ();
316+ PAD_ScanPads ();
310317 WPAD_ScanPads ();
311- if (WPAD_ButtonsDown (0 )) break ;
318+ if (WPAD_ButtonsDown (0 ) || PAD_ButtonsDown ( 0 ) ) break ;
312319 }
313320
314321 free (title );
@@ -384,7 +391,7 @@ void app_info(json_t* config, const char* hostname, json_t* app, char* user_agen
384391 printf ("%s" , line );
385392 }
386393
387- print_bottombar (lines , offset , printable - 1 , "A to download, B for back, HOME to exit" , 0 );
394+ print_bottombar (lines , offset , printable - 1 , "A to download, B for back, HOME (Start) to exit" , 0 );
388395
389396 int ret = process_inputs (lines , & offset , & index , 1 );
390397 if (ret == 2 ) break ;
@@ -430,7 +437,7 @@ void surf_category(json_t* config, const char* hostname, const char* name, json_
430437 printf ("%s\n" , json_string_value (json_object_get (app , "name" )));
431438 }
432439
433- print_bottombar (appsamount , offset , printable - 1 , "A to engage, B for back, HOME to exit" , 0 );
440+ print_bottombar (appsamount , offset , printable - 1 , "A to engage, B for back, HOME (Start) to exit" , 0 );
434441 int ret = process_inputs (appsamount , & offset , & index , 0 );
435442 if (ret == 2 ) break ;
436443 else if (ret == -1 ) {
@@ -473,7 +480,7 @@ void surf_repository(json_t* config, const char* hostname, char* user_agent) {
473480 printf ("%s\n" , json_string_value (json_object_get (category , "display_name" )));
474481 }
475482
476- print_bottombar (arraysize , offset , processed - 1 , "A to engage, B for back, HOME to exit" , 0 );
483+ print_bottombar (arraysize , offset , processed - 1 , "A to engage, B for back, HOME (Start) to exit" , 0 );
477484 int ret = process_inputs (arraysize , & offset , & index , 0 );
478485 if (ret == 2 ) break ;
479486 else if (ret == -1 ) {
@@ -508,7 +515,7 @@ void open_settings() {
508515 printf ("%s" , buf );
509516 }
510517
511- print_bottombar (lines , offset , printable - 1 , "B for back, HOME to exit" , 0 );
518+ print_bottombar (lines , offset , printable - 1 , "B for back, HOME (Start) to exit" , 0 );
512519
513520 int ret = process_inputs (lines , & offset , & index , 1 );
514521 if (ret == 2 ) break ;
@@ -544,7 +551,7 @@ void start_tui(json_t* config, char* user_agent) {
544551 printf ("%s: %s\n" , provider , name );
545552 }
546553
547- print_bottombar (reposamount , offset , printable - 1 , "A to engage, 1 for settings, HOME to exit" , 0 );
554+ print_bottombar (reposamount , offset , printable - 1 , "A to engage, 1 (X) for settings, HOME (Start) to exit" , 0 );
548555 }
549556 int ret = (i == 0 && reposamount == 1 ) ? 1 : process_inputs (reposamount , & offset , & index , 0 );
550557
0 commit comments