psp gfx scaling/etc stuff

git-svn-id: file:///home/notaz/opt/svn/PicoDrive@279 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
notaz 2007-10-25 19:39:40 +00:00
parent 3aa1e148a2
commit 8ab3e3c1cf
26 changed files with 567 additions and 321 deletions

View file

@ -69,7 +69,7 @@ static __inline int PicoMemBase(u32 pc)
#endif
static u32 CPU_CALL PicoCheckPc(u32 pc)
static u32 PicoCheckPc(u32 pc)
{
u32 ret=0;
#if defined(EMU_C68K)
@ -315,7 +315,7 @@ static void OtherWrite8End(u32 a,u32 d,int realsize)
// Read Rom and read Ram
#ifndef _ASM_MEMORY_C
PICO_INTERNAL_ASM u32 CPU_CALL PicoRead8(u32 a)
PICO_INTERNAL_ASM u32 PicoRead8(u32 a)
{
u32 d=0;
@ -351,7 +351,7 @@ end:
return d;
}
PICO_INTERNAL_ASM u32 CPU_CALL PicoRead16(u32 a)
PICO_INTERNAL_ASM u32 PicoRead16(u32 a)
{
u32 d=0;
@ -387,7 +387,7 @@ end:
return d;
}
PICO_INTERNAL_ASM u32 CPU_CALL PicoRead32(u32 a)
PICO_INTERNAL_ASM u32 PicoRead32(u32 a)
{
u32 d=0;
@ -426,7 +426,7 @@ end:
// Write Ram
#ifndef _ASM_MEMORY_C
PICO_INTERNAL_ASM void CPU_CALL PicoWrite8(u32 a,u8 d)
PICO_INTERNAL_ASM void PicoWrite8(u32 a,u8 d)
{
#ifdef __debug_io
dprintf("w8 : %06x, %02x @%06x", a&0xffffff, d, SekPc);
@ -446,7 +446,7 @@ PICO_INTERNAL_ASM void CPU_CALL PicoWrite8(u32 a,u8 d)
}
#endif
void CPU_CALL PicoWrite16(u32 a,u16 d)
void PicoWrite16(u32 a,u16 d)
{
#ifdef __debug_io
dprintf("w16: %06x, %04x", a&0xffffff, d);
@ -462,7 +462,7 @@ void CPU_CALL PicoWrite16(u32 a,u16 d)
OtherWrite16(a,d);
}
static void CPU_CALL PicoWrite32(u32 a,u32 d)
static void PicoWrite32(u32 a,u32 d)
{
#ifdef __debug_io
dprintf("w32: %06x, %08x", a&0xffffff, d);

View file

@ -316,7 +316,7 @@ static int PicoFrameSimple(void)
int cycles_68k_vblock,cycles_68k_block;
// split to 16 run calls for active scan, for vblank split to 2 (ntsc), 3 (pal 240), 4 (pal 224)
if (Pico.m.pal && (pv->reg[1]&8)) { // 240 lines
if (Pico.m.pal && (pv->reg[1]&8)) {
if(pv->reg[1]&8) { // 240 lines
cycles_68k_block = 7329; // (488*240+148)/16.0, -4
cycles_68k_vblock = 11640; // (72*488-148-68)/3.0, 0
@ -378,14 +378,6 @@ static int PicoFrameSimple(void)
PicoRunZ80Simple(line, lines);
}
// here we render sound if ym2612 is disabled
if (!(PicoOpt&1) && PsndOut) {
int len = sound_render(0, PsndLen);
if (PicoWriteSound) PicoWriteSound(len);
// clear sound buffer
sound_clear();
}
// render screen
if (!PicoSkipFrame)
{
@ -401,6 +393,17 @@ static int PicoFrameSimple(void)
for (y=0;y<224;y++) PicoLine(y);
#endif
else PicoFrameFull();
#ifdef DRAW_FINISH_FUNC
DRAW_FINISH_FUNC();
#endif
}
// here we render sound if ym2612 is disabled
if (!(PicoOpt&1) && PsndOut) {
int len = sound_render(0, PsndLen);
if (PicoWriteSound) PicoWriteSound(len);
// clear sound buffer
sound_clear();
}
// a gap between flags set and vint

View file

@ -139,6 +139,10 @@ static int PicoFrameHints(void)
#endif
}
#ifdef DRAW_FINISH_FUNC
DRAW_FINISH_FUNC();
#endif
// V-int line (224 or 240)
Pico.m.scanline=(short)y;

View file

@ -313,7 +313,7 @@ PICO_INTERNAL void PicoFrameFull();
// Memory.c
PICO_INTERNAL int PicoInitPc(unsigned int pc);
PICO_INTERNAL_ASM unsigned int CPU_CALL PicoRead32(unsigned int a);
PICO_INTERNAL_ASM unsigned int PicoRead32(unsigned int a);
PICO_INTERNAL void PicoMemSetup(void);
PICO_INTERNAL_ASM void PicoMemReset(void);
PICO_INTERNAL int PadRead(int i);