notaz.gp2x.de
/
fceu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
098 video fix, 098 sound integrated
[fceu.git]
/
drivers
/
gp2x
/
gp2x-video.c
diff --git
a/drivers/gp2x/gp2x-video.c
b/drivers/gp2x/gp2x-video.c
index
ef4a4dc
..
d8524b6
100644
(file)
--- a/
drivers/gp2x/gp2x-video.c
+++ b/
drivers/gp2x/gp2x-video.c
@@
-99,16
+99,12
@@
int InitVideo(void)
}
}
-void ToggleFS(void)
-{
-}
-
-
-// 16: rrrr rggg gggb bbbb
+// 16: rrrr rggg gg0b bbbb
void FCEUD_SetPalette(uint8 index, uint8 r, uint8 g, uint8 b)
{
void FCEUD_SetPalette(uint8 index, uint8 r, uint8 g, uint8 b)
{
+ /* note: menu depends on bit5 being 0 */
gp2x_palette[index] = (r << 16) | (g << 8) | b;
gp2x_palette[index] = (r << 16) | (g << 8) | b;
- gp2x_palette16[index] = ((r & 0xf8) << 8) | ((g & 0xf
c
) << 3) | (b >> 3);
+ gp2x_palette16[index] = ((r & 0xf8) << 8) | ((g & 0xf
8
) << 3) | (b >> 3);
gp2x_video_setpalette(gp2x_palette, index + 1);
paletterefresh = 1;
gp2x_video_setpalette(gp2x_palette, index + 1);
paletterefresh = 1;
@@
-160,19
+156,17
@@
static INLINE void printFps(uint8 *screen)
}
}
-void Blit
Screen(uint8 *buf
)
+void Blit
Prepare(int skip
)
{
framesEmulated++;
{
framesEmulated++;
- if (
!buf
) {
+ if (
skip
) {
printFps(0);
return;
}
framesRendered++;
printFps(0);
return;
}
framesRendered++;
- printFps(gp2x_screen);
-
if (eoptions & EO_CLIPSIDES)
{
int i, *p = (int *) ((char *)gp2x_screen + 32);
if (eoptions & EO_CLIPSIDES)
{
int i, *p = (int *) ((char *)gp2x_screen + 32);
@@
-182,6
+176,8
@@
void BlitScreen(uint8 *buf)
}
}
}
}
+ printFps(gp2x_screen);
+
if (Settings.scaling == 3)
{
soft_scale((char *)gp2x_screen + 32, gp2x_palette16, srendline, erendline-srendline);
if (Settings.scaling == 3)
{
soft_scale((char *)gp2x_screen + 32, gp2x_palette16, srendline, erendline-srendline);
@@
-189,8
+185,18
@@
void BlitScreen(uint8 *buf)
memset32((int *)((char *)gp2x_screen + 32), 0, srendline*320*2/4);
}
memset32((int *)((char *)gp2x_screen + 32), 0, srendline*320*2/4);
}
- gp2x_video_flip();
- XBuf = gp2x_screen;
+ /* at this point we should be done with the frame */
+ gp2x_video_flush_cache();
+}
+
+
+void BlitScreen(int skip)
+{
+ if (!skip)
+ {
+ gp2x_video_flip();
+ XBuf = gp2x_screen;
+ }
}
}