X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=gp2x%2Fmenu.c;h=d424152fdd77147706b4083e2b91e5e5a9b222b4;hb=8f1b51efbc8b3047ee6959d1f69add033341bf67;hp=40eee48b29bd31b02294f49b2894889082ee9b43;hpb=af6e9c49619b918da965e82e5ecb525d98aee862;p=libpicofe.git diff --git a/gp2x/menu.c b/gp2x/menu.c index 40eee48..d424152 100644 --- a/gp2x/menu.c +++ b/gp2x/menu.c @@ -729,6 +729,10 @@ static void kc_sel_loop(void) static void draw_cd_menu_options(int menu_sel, char *b_us, char *b_eu, char *b_jp) { int tl_x = 25, tl_y = 60, y; + char ra_buff[16]; + + if (PicoCDBuffers > 1) sprintf(ra_buff, "%5iK", PicoCDBuffers * 2); + else strcpy(ra_buff, " OFF"); y = tl_y; //memset(gp2x_screen, 0, 320*240); @@ -740,7 +744,9 @@ static void draw_cd_menu_options(int menu_sel, char *b_us, char *b_eu, char *b_j gp2x_text_out8(tl_x, (y+=10), "CD LEDs %s", (currentConfig.EmuOpt &0x0400)?"ON":"OFF"); // 3 gp2x_text_out8(tl_x, (y+=10), "CDDA audio (using mp3s) %s", (currentConfig.PicoOpt&0x0800)?"ON":"OFF"); // 4 gp2x_text_out8(tl_x, (y+=10), "PCM audio %s", (currentConfig.PicoOpt&0x0400)?"ON":"OFF"); // 5 - gp2x_text_out8(tl_x, (y+=10), "Better sync (very slow) %s", (currentConfig.PicoOpt&0x2000)?"ON":"OFF"); // 6 + gp2x_text_out8(tl_x, (y+=10), "ReadAhead buffer %s", ra_buff); // 6 + gp2x_text_out8(tl_x, (y+=10), "Scale/Rot. fx (buggy,slow) %s", (currentConfig.PicoOpt&0x1000)?"ON":"OFF"); // 7 + gp2x_text_out8(tl_x, (y+=10), "Better sync (slow) %s", (currentConfig.PicoOpt&0x2000)?"ON":"OFF"); // 8 gp2x_text_out8(tl_x, (y+=10), "Done"); // draw cursor @@ -756,7 +762,7 @@ static void draw_cd_menu_options(int menu_sel, char *b_us, char *b_eu, char *b_j static void cd_menu_loop_options(void) { - int menu_sel = 0, menu_sel_max = 7; + int menu_sel = 0, menu_sel_max = 9; unsigned long inp = 0; char bios_us[32], bios_eu[32], bios_jp[32], *bios, *p; @@ -786,8 +792,19 @@ static void cd_menu_loop_options(void) case 3: currentConfig.EmuOpt ^=0x0400; break; case 4: currentConfig.PicoOpt^=0x0800; break; case 5: currentConfig.PicoOpt^=0x0400; break; - case 6: currentConfig.PicoOpt^=0x2000; break; - case 7: return; + case 6: + if (inp & GP2X_LEFT) { + PicoCDBuffers >>= 1; + if (PicoCDBuffers < 64) PicoCDBuffers = 0; + } else { + if (PicoCDBuffers < 64) PicoCDBuffers = 64; + else PicoCDBuffers <<= 1; + if (PicoCDBuffers > 4096) PicoCDBuffers = 4096; + } + break; + case 7: currentConfig.PicoOpt^=0x1000; break; + case 8: currentConfig.PicoOpt^=0x2000; break; + case 9: return; } } if(inp & (GP2X_X|GP2X_A)) return;