Gizmondo port updated to 1.51b

git-svn-id: file:///home/notaz/opt/svn/PicoDrive/platform@567 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
notaz 2008-08-10 10:18:36 +00:00
parent 7443ecd958
commit 5d239ae7a4
5 changed files with 52 additions and 8 deletions

View file

@ -369,6 +369,10 @@ Well known way to improve the GP2X performance. You must restart the emulator
for the change of this option to take effect.
#endif
@@1. "Disable idle loop patching"
Idle loop patching is used to improve performance, but may cause compatibility
problems in some rare cases. Try disabling this if your game has problems.
Sega/Mega CD options
--------------------
@ -449,6 +453,9 @@ There are 3 options:
@@3. "Set to unscaled centered"
Adjust the resizing options to set game image to it's original size.
@@3. "Set to 4:3 scaled"
Scale the image up, but keep 4:3 aspect, by adding black borders.
@@3. "Set to fullscreen"
Adjust the resizing options to make the game image fullscreen.
@ -645,6 +652,11 @@ Additional thanks
Changelog
---------
1.51b
* Fixed a crash when uncompressed savestate is loaded.
* Fixed an idle loop detection related hanging problem.
* PSP: fixed another palette related regression.
1.51a
* Fixed a sync problem between main and sub 68k. Should fix the hanging
problem for some games.

View file

@ -41,11 +41,33 @@ void menu_flip(void);
#elif defined(__GIZ__)
// TODO
//#include "../gizmondo/giz.h"
#define SCREEN_WIDTH 321
#define SCREEN_BUFFER menu_screen
extern unsigned char *menu_screen;
#include "../gizmondo/giz.h"
#define BTN_NORTH BTN_STOP
#define BTN_SOUTH BTN_PLAY
#define BTN_WEST BTN_REW
#define BTN_EAST BTN_FWD
unsigned long wait_for_input(unsigned int interesting);
void menu_draw_begin(int use_bgbuff);
void menu_darken_bg(void *dst, const void *src, int pixels, int darker);
void menu_draw_end(void);
#define SCREEN_WIDTH 321
#define SCREEN_HEIGHT 240
#define SCREEN_BUFFER ((giz_screen != NULL) ? giz_screen : menu_screen)
extern void *menu_screen;
extern void *giz_screen;
#define read_buttons(which) \
wait_for_input(which)
#define read_buttons_async(which) 0
#define menu_draw_begin() \
menu_draw_begin(1)
#define clear_screen() \
memset(SCREEN_BUFFER, 0, SCREEN_WIDTH*SCREEN_HEIGHT*2)
#define darken_screen() \
menu_darken_bg(menu_screen, menu_screen, SCREEN_WIDTH*SCREEN_HEIGHT, 0)
// ------------------------------------

View file

@ -785,7 +785,7 @@ static void parse(const char *var, const char *val)
ret = custom_read(me, var, val);
}
}
if (!ret) lprintf("config_readsect: unhandled var: %s\n", var);
if (!ret) lprintf("config_readsect: unhandled var: \"%s\"\n", var);
}

View file

@ -1,6 +1,14 @@
@ vim:filetype=armasm
.global cache_flush_d_inval_i
cache_flush_d_inval_i:
mov r2, #0x0 @ must be 0 ???
swi 0x9f0002
bx lr
.global clut_line @ void *dest, void *src, unsigned short *pal, int pixels_mask
clut_line:

View file

@ -135,12 +135,13 @@ void emu_Deinit(void)
void emu_prepareDefaultConfig(void)
{
memset(&defaultConfig, 0, sizeof(defaultConfig));
defaultConfig.EmuOpt = 0x9f | 0x00700; // | <- ram_tmng, confirm_save, cd_leds
defaultConfig.EmuOpt = 0x8f | 0x00600; // | <- confirm_save, cd_leds
defaultConfig.s_PicoOpt = 0x0f | POPT_EXT_FM|POPT_EN_MCD_PCM|POPT_EN_MCD_CDDA|POPT_EN_SVP_DRC;
defaultConfig.s_PicoOpt |= POPT_ACC_SPRITES|POPT_EN_MCD_GFX;
defaultConfig.s_PicoOpt &= ~POPT_EN_SVP_DRC; // crashes :(
defaultConfig.EmuOpt &= ~8; // no save gzip
defaultConfig.s_PsndRate = 44100;
defaultConfig.s_PicoRegion = 0; // auto
defaultConfig.s_PicoRegion = 0;
defaultConfig.s_PicoAutoRgnOrder = 0x184; // US, EU, JP
defaultConfig.s_PicoCDBuffers = 0;
defaultConfig.Frameskip = 0;
@ -938,6 +939,7 @@ void emu_Loop(void)
}
bench_fps += frames_shown;
sprintf(fpsbuff, "%3i/%3i/%3i", frames_shown, bench_fps_s, (bf[0]+bf[1]+bf[2]+bf[3])>>2);
printf("%s\n", fpsbuff);
#else
if (currentConfig.EmuOpt & 2) {
sprintf(fpsbuff, "%3i/%3i", frames_shown, frames_done);