read-ahead turn off, cfg file, minor adjustments

git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@399 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
notaz 2008-03-27 22:42:54 +00:00
parent a5365695a4
commit 88bfc63d31
7 changed files with 163 additions and 20 deletions

View file

@ -141,7 +141,7 @@ void emu_prepareDefaultConfig(void)
defaultConfig.s_PsndRate = 44100;
defaultConfig.s_PicoRegion = 0; // auto
defaultConfig.s_PicoAutoRgnOrder = 0x184; // US, EU, JP
defaultConfig.s_PicoCDBuffers = 64;
defaultConfig.s_PicoCDBuffers = 0;
defaultConfig.Frameskip = -1; // auto
defaultConfig.CPUclock = 200;
defaultConfig.volume = 50;

109
gp2x/game.cfg Normal file
View file

@ -0,0 +1,109 @@
#
# Sega/Mega CD games
#
[CD|GM MK-4432 -00|U|ADVENTURES OF BA]
Scale/Rot. fx (slow) = 1
Better sync (slow) = 1
[CD|GM T-60055-00|U|AH3-THUNDERSTRIKE]
Scale/Rot. fx (slow) = 1
[CD|GM MK-4401 -00|U|BATMAN RETURNS]
Scale/Rot. fx (slow) = 1
[CD|GM T-115075-00|U|BCRACERS]
Scale/Rot. fx (slow) = 1
[CD|GM MK-4402|U|COBRA COMMAND]
Better sync (slow) = 1
[CD|GM MK-4651 -00|U|DARK WIZARD]
Better sync (slow) = 1
[CD|GM T-121015-00|U|DRAGONS LAIR]
Renderer = 16bit accurate
[CD|GM T-60094|J|JAGUAR XJ220]
Renderer = 16bit accurate
[CD|GM T-127015-00|U|LUNAR]
Scale/Rot. fx (slow) = 1
[CD|GM T-111065 -0|U|MAD DOG II THE LOST GOLD]
Renderer = 16bit accurate
[CD|GM T-11105 -00|U|MAD DOG MCCREE]
Renderer = 16bit accurate
[CD|GM T-81025-00|U|MORTAL KOMBAT]
Renderer = 16bit accurate
Better sync (slow) = 1
[CD|GM T-04903-01|U|NIGHT TRAP]
Renderer = 16bit accurate
[CD|GM T-113025-00|U|NOVASTORM]
Better sync (slow) = 1
[CD|GM T-127035-00|U|Popful MAIL]
Better sync (slow) = 1
[CD|MK 4603-50|JUE|ROAD AVENGER]
Renderer = 16bit accurate
Better sync (slow) = 1
[CD|GM T-50085|U|ROAD RASH]
Renderer = 16bit accurate
Better sync (slow) = 1
[CD|GM MK-4416 -00|E|ROBO ALESTE]
Renderer = 16bit accurate
[CD|GM T-06201-03|U|SEWER SHARK]
Renderer = 16bit accurate
[CD|GM T-113045-00|E|SHADOW OF THE BEAST TWO]
Renderer = 16bit accurate
[CD|GM MK-4404|U|SOL-FEACE]
Better sync (slow) = 1
[CD|GM MK-4407-00|E|SONIC THE HEDGEHOG-CD]
Scale/Rot. fx (slow) = 1
[CD|GM MK-4407 -00|U|SONIC THE HEDGEHOG-CD]
Scale/Rot. fx (slow) = 1
[CD|GM T-22025-00|U|THE 3RD WORLD WAR]
Better sync (slow) = 1
[CD|GM MK- 4430 -|E|YUMEMI MISTERY MANSION]
Renderer = 16bit accurate
#
# Virtua Racing
#
[MD|GM MK-1229 -00|U|Virtua Racing]
Renderer = 8bit fast
Show FPS = 1
GP2X CPU clocks = 235
[MD|GM G-7001 -00|J|Virtua Racing]
Renderer = 8bit fast
Show FPS = 1
GP2X CPU clocks = 235
[MD|GM MK-1229 -00|E|Virtua Racing]
Renderer = 8bit fast
Show FPS = 1
GP2X CPU clocks = 235
[MD|GM MK-1229 -00|E|VIRTUA RACING \00\00\00\00\00\00\00\00\00]
Renderer = 8bit fast
Show FPS = 1
GP2X CPU clocks = 235
#
# Genesis/MegaDrive games
#

View file

@ -284,6 +284,31 @@ void Reset940(int yes, int bank)
gp2x_memregs[0x3B48>>1] = ((yes&1) << 7) | (bank & 0x03);
}
static void proc_set(const char *path, const char *val)
{
FILE *f;
char tmp[16];
f = fopen(path, "w");
if (f == NULL) {
printf("failed to open: %s\n", path);
return;
}
fprintf(f, "0\n");
fclose(f);
printf("\"%s\" is set to: ", path);
f = fopen(path, "r");
if (f == NULL) {
printf("(open failed)\n");
return;
}
fgets(tmp, sizeof(tmp), f);
printf("%s", tmp);
fclose(f);
}
/* common */
@ -337,6 +362,10 @@ void gp2x_init(void)
/* init usb joys -GnoStiC */
gp2x_usbjoy_init();
/* disable Linux read-ahead */
proc_set("/proc/sys/vm/max-readahead", "0\n");
proc_set("/proc/sys/vm/min-readahead", "0\n");
printf("exitting init()\n"); fflush(stdout);
}

View file

@ -960,9 +960,9 @@ static void cd_menu_loop_options(void)
selected_id == MA_CDOPT_READAHEAD) {
if (inp & GP2X_LEFT) {
PicoCDBuffers >>= 1;
if (PicoCDBuffers < 64) PicoCDBuffers = 0;
if (PicoCDBuffers < 2) PicoCDBuffers = 0;
} else {
if (PicoCDBuffers < 64) PicoCDBuffers = 64;
if (PicoCDBuffers < 2) PicoCDBuffers = 2;
else PicoCDBuffers <<= 1;
if (PicoCDBuffers > 8*1024) PicoCDBuffers = 8*1024; // 16M
}