1.40a fixes

git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@402 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
notaz 2008-03-29 12:06:20 +00:00
parent 58d18b39d9
commit 558d8e1fdd
6 changed files with 18 additions and 6 deletions

View file

@ -25,6 +25,9 @@ from Dave's (fdave, finalburn) PicoDrive 0.30 for Pocket PC. The Sega/Mega CD
code is roughly based on Stephane Dallongeville's Gens. code is roughly based on Stephane Dallongeville's Gens.
#endif #endif
PicoDrive is the first emulator ever to properly emulate Virtua Racing and
it's SVP chip.
How to make it run How to make it run
------------------ ------------------
@ -138,8 +141,6 @@ Other important stuff
* Some Sega/Mega CD games don't use Z80 for anything, but they leave it active, * Some Sega/Mega CD games don't use Z80 for anything, but they leave it active,
so disabling Z80 manually (in advanced options) improves performance. so disabling Z80 manually (in advanced options) improves performance.
#ifdef GP2X #ifdef GP2X
* Sega/Mega CD: if FMV game performance is poor, try adjusting
"ReadAhead buffer" to something like 2048K.
* When you use both GP2X CPUs, keep in mind that you can't overclock as high as * When you use both GP2X CPUs, keep in mind that you can't overclock as high as
when using ARM920 only. For example my GP2X when run singlecore can reach when using ARM920 only. For example my GP2X when run singlecore can reach
280MHz, but with both cores it's about 250MHz. When overclocked too much, 280MHz, but with both cores it's about 250MHz. When overclocked too much,
@ -518,6 +519,8 @@ z80 @ 3.6MHz: yes, DrZ80 core
VDP: yes, except some quirks not used by games VDP: yes, except some quirks not used by games
YM2612 FM: yes, optimized MAME core YM2612 FM: yes, optimized MAME core
SN76489 PSG: yes, MAME core SN76489 PSG: yes, MAME core
SVP chip: yes! This is first emu to ever do this.
Some in-cart mappers are supported too.
Sega/Mega CD: Sega/Mega CD:
#ifdef PSP #ifdef PSP
@ -536,7 +539,7 @@ Problems / limitations
* 32x is not emulated. * 32x is not emulated.
#ifdef PSP #ifdef PSP
* SVP is not emulated. * SVP emulation is terribly slow.
#endif #endif
* Various VDP quirks (window bug, scroll size 2, etc.) are not emulated, * Various VDP quirks (window bug, scroll size 2, etc.) are not emulated,
as very few games use this (if any at all). as very few games use this (if any at all).
@ -633,6 +636,10 @@ Additional thanks
Changelog Changelog
--------- ---------
1.40a
* Fixed a binding problem with up and down keys.
* Default game config no longer overrides global user config.
1.40 1.40
+ Added support for SVP (Sega Virtua Processor) to emulate Virtua Racing, + Added support for SVP (Sega Virtua Processor) to emulate Virtua Racing,
wrote ARM recompiler and some HLE code for VR. Credits to Exophase and wrote ARM recompiler and some HLE code for VR. Credits to Exophase and

View file

@ -517,6 +517,8 @@ int emu_ReadConfig(int game, int no_defaults)
ret = config_readsect(cfg, sect); ret = config_readsect(cfg, sect);
currentConfig.volume = vol; // make vol global (bah) currentConfig.volume = vol; // make vol global (bah)
} }
else
config_readsect("game_def.cfg", sect);
if (ret != 0) if (ret != 0)
{ {

View file

@ -232,7 +232,7 @@ $(error need VER)
endif endif
endif endif
rel: PicoDrive.gpe code940/pico940_v2.bin readme.txt PicoDrive.man.txt PicoDrive.png game.cfg rel: PicoDrive.gpe code940/pico940_v2.bin readme.txt PicoDrive.man.txt PicoDrive.png game_def.cfg
zip -9 -j ../../PicoDrive_$(VER).zip $^ mmuhack.o zip -9 -j ../../PicoDrive_$(VER).zip $^ mmuhack.o
zip -9 -r ../../PicoDrive_$(VER).zip skin -i \*.png -i \*.txt zip -9 -r ../../PicoDrive_$(VER).zip skin -i \*.png -i \*.txt

View file

@ -124,6 +124,8 @@ static unsigned long wait_for_input_usbjoy(unsigned long interesting, int *joy)
// handle only 1 event at a time // handle only 1 event at a time
for (i = 1; i != 0; i <<= 1) for (i = 1; i != 0; i <<= 1)
if (ret & i) { ret &= i; break; } if (ret & i) { ret &= i; break; }
// ... but allow select
ret |= inp_prev & GP2X_SELECT;
return ret; return ret;
} }
@ -780,7 +782,8 @@ static void key_config_loop(const me_bind_action *opts, int opt_cnt, int player_
draw_key_config(opts, opt_cnt, player_idx, sel); draw_key_config(opts, opt_cnt, player_idx, sel);
inp = wait_for_input_usbjoy(CONFIGURABLE_KEYS, &joy); inp = wait_for_input_usbjoy(CONFIGURABLE_KEYS, &joy);
// printf("got %08lX from joy %i\n", inp, joy); // printf("got %08lX from joy %i\n", inp, joy);
if (joy == 0) { if (joy == 0)
{
if (!(inp & GP2X_SELECT)) { if (!(inp & GP2X_SELECT)) {
prev_select = 0; prev_select = 0;
if(inp & GP2X_UP ) { sel--; if (sel < 0) sel = menu_sel_max; continue; } if(inp & GP2X_UP ) { sel--; if (sel < 0) sel = menu_sel_max; continue; }

View file

@ -1,2 +1,2 @@
#define VERSION "1.40" #define VERSION "1.40a"