notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't draw layer where window is (for World Championship Soccer II)
[picodrive.git]
/
Pico
/
cd
/
Pico.c
diff --git
a/Pico/cd/Pico.c
b/Pico/cd/Pico.c
index
a0f2880
..
5669238
100644
(file)
--- a/
Pico/cd/Pico.c
+++ b/
Pico/cd/Pico.c
@@
-2,7
+2,6
@@
#include "../PicoInt.h"
#include "../PicoInt.h"
-#include "../sound/sound.h"
extern unsigned char formatted_bram[4*0x10];
extern unsigned char formatted_bram[4*0x10];
@@
-32,7
+31,7
@@
int (*PicoMCDcloseTray)(void) = NULL;
}
}
-int PicoInitMCD(void)
+
PICO_INTERNAL
int PicoInitMCD(void)
{
SekInitS68k();
Init_CD_Driver();
{
SekInitS68k();
Init_CD_Driver();
@@
-41,7
+40,7
@@
int PicoInitMCD(void)
}
}
-void PicoExitMCD(void)
+
PICO_INTERNAL
void PicoExitMCD(void)
{
End_CD_Driver();
{
End_CD_Driver();
@@
-49,7
+48,7
@@
void PicoExitMCD(void)
//dump_ram(Pico.ram, "ram.bin");
}
//dump_ram(Pico.ram, "ram.bin");
}
-int PicoResetMCD(int hard)
+
PICO_INTERNAL
int PicoResetMCD(int hard)
{
if (hard) {
int fmt_size = sizeof(formatted_bram);
{
if (hard) {
int fmt_size = sizeof(formatted_bram);
@@
-84,7
+83,7
@@
int PicoResetMCD(int hard)
return 0;
}
return 0;
}
-static __inline void SekRun(int cyc)
+static __inline void SekRun
M68k
(int cyc)
{
int cyc_do;
SekCycleAim+=cyc;
{
int cyc_do;
SekCycleAim+=cyc;
@@
-123,7
+122,7
@@
void SekRunPS(int cyc_m68k, int cyc_s68k);
static __inline void SekRunPS(int cyc_m68k, int cyc_s68k)
{
int cycn, cycn_s68k, cyc_do;
static __inline void SekRunPS(int cyc_m68k, int cyc_s68k)
{
int cycn, cycn_s68k, cyc_do;
- int
d_cm = 0, d_cs = 0,
ex;
+ int ex;
SekCycleAim+=cyc_m68k;
SekCycleAimS68k+=cyc_s68k;
SekCycleAim+=cyc_m68k;
SekCycleAimS68k+=cyc_s68k;
@@
-135,7
+134,6
@@
static __inline void SekRunPS(int cyc_m68k, int cyc_s68k)
{
ex = 0;
cycn_s68k = (cycn + cycn/2 + cycn/8) >> 16;
{
ex = 0;
cycn_s68k = (cycn + cycn/2 + cycn/8) >> 16;
-//fprintf(stderr, "%3i/%3i: ", cycn>>16, cycn_s68k);
if ((cyc_do = SekCycleAim-SekCycleCnt-(cycn>>16)) > 0) {
#if defined(EMU_C68K)
PicoCpu.cycles = cyc_do;
if ((cyc_do = SekCycleAim-SekCycleCnt-(cycn>>16)) > 0) {
#if defined(EMU_C68K)
PicoCpu.cycles = cyc_do;
@@
-146,7
+144,6
@@
static __inline void SekRunPS(int cyc_m68k, int cyc_s68k)
SekCycleCnt += (ex = m68k_execute(cyc_do));
#endif
}
SekCycleCnt += (ex = m68k_execute(cyc_do));
#endif
}
-//fprintf(stderr, "%3i ", ex); d_cm += ex; ex = 0;
if ((cyc_do = SekCycleAimS68k-SekCycleCntS68k-cycn_s68k) > 0) {
#if defined(EMU_C68K)
PicoCpuS68k.cycles = cyc_do;
if ((cyc_do = SekCycleAimS68k-SekCycleCntS68k-cycn_s68k) > 0) {
#if defined(EMU_C68K)
PicoCpuS68k.cycles = cyc_do;
@@
-157,10
+154,7
@@
static __inline void SekRunPS(int cyc_m68k, int cyc_s68k)
SekCycleCntS68k += (ex = m68k_execute(cyc_do));
#endif
}
SekCycleCntS68k += (ex = m68k_execute(cyc_do));
#endif
}
-//fprintf(stderr, "%3i\n", ex); d_cs += ex;
}
}
-
-//fprintf(stderr, "== end %3i/%3i ==\n", d_cm, d_cs);
}
#endif
}
#endif
@@
-291,7
+285,7
@@
static int PicoFrameHintsMCD(void)
{
//dprintf("vint: @ %06x [%i|%i]", SekPc, y, SekCycleCnt);
pv->status|=0x88; // V-Int happened, go into vblank
{
//dprintf("vint: @ %06x [%i|%i]", SekPc, y, SekCycleCnt);
pv->status|=0x88; // V-Int happened, go into vblank
- SekRun(128); SekCycleAim-=128; // there must be a gap between H and V ints, also after vblank bit set (Mazin Saga, Bram Stoker's Dracula)
+ SekRun
M68k
(128); SekCycleAim-=128; // there must be a gap between H and V ints, also after vblank bit set (Mazin Saga, Bram Stoker's Dracula)
/*if(Pico.m.z80Run && (PicoOpt&4)) {
z80CycleAim+=cycles_z80/2;
total_z80+=z80_run(z80CycleAim-total_z80);
/*if(Pico.m.z80Run && (PicoOpt&4)) {
z80CycleAim+=cycles_z80/2;
total_z80+=z80_run(z80CycleAim-total_z80);
@@
-329,7
+323,7
@@
static int PicoFrameHintsMCD(void)
if ((PicoOpt & 0x2000) && (Pico_mcd->m.busreq&3) == 1) {
SekRunPS(cycles_68k, cycles_s68k); // "better/perfect sync"
} else {
if ((PicoOpt & 0x2000) && (Pico_mcd->m.busreq&3) == 1) {
SekRunPS(cycles_68k, cycles_s68k); // "better/perfect sync"
} else {
- SekRun(cycles_68k);
+ SekRun
M68k
(cycles_68k);
if ((Pico_mcd->m.busreq&3) == 1) // no busreq/no reset
SekRunS68k(cycles_s68k);
}
if ((Pico_mcd->m.busreq&3) == 1) // no busreq/no reset
SekRunS68k(cycles_s68k);
}
@@
-358,7
+352,7
@@
static int PicoFrameHintsMCD(void)
}
}
-int PicoFrameMCD(void)
+
PICO_INTERNAL
int PicoFrameMCD(void)
{
if(!(PicoOpt&0x10))
PicoFrameStart();
{
if(!(PicoOpt&0x10))
PicoFrameStart();