notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
clean up dac code a bit
[picodrive.git]
/
pico
/
pico_cmn.c
diff --git
a/pico/pico_cmn.c
b/pico/pico_cmn.c
index
e2ec0e1
..
b39cfdb
100644
(file)
--- a/
pico/pico_cmn.c
+++ b/
pico/pico_cmn.c
@@
-39,7
+39,7
@@
static void SekSyncM68k(void)
#elif defined(EMU_M68K)
SekCycleCnt += m68k_execute(cyc_do) - cyc_do;
#elif defined(EMU_F68K)
#elif defined(EMU_M68K)
SekCycleCnt += m68k_execute(cyc_do) - cyc_do;
#elif defined(EMU_F68K)
- SekCycleCnt += fm68k_emulate(cyc_do, 0
, 0
) - cyc_do;
+ SekCycleCnt += fm68k_emulate(cyc_do, 0) - cyc_do;
#endif
}
#endif
}
@@
-85,8
+85,7
@@
static int PicoFrameHints(void)
}
z80_resetCycles();
}
z80_resetCycles();
- PsndDacLine = 0;
- emustatus &= ~1;
+ PsndStartFrame();
pv->status&=~0x88; // clear V-Int, come out of vblank
pv->status&=~0x88; // clear V-Int, come out of vblank
@@
-145,10
+144,9
@@
static int PicoFrameHints(void)
if (Pico.m.z80Run && !Pico.m.z80_reset && (PicoOpt&POPT_EN_Z80))
PicoSyncZ80(cycles);
if (Pico.m.z80Run && !Pico.m.z80_reset && (PicoOpt&POPT_EN_Z80))
PicoSyncZ80(cycles);
- if (ym2612.dacen && PsndDacLine <= y)
- PsndDoDAC(y);
#ifdef PICO_CD
#ifdef PICO_CD
- pcd_sync_s68k(cycles, 0);
+ if (PicoAHW & PAHW_MCD)
+ pcd_sync_s68k(cycles, 0);
#endif
#ifdef PICO_32X
p32x_sync_sh2s(cycles);
#endif
#ifdef PICO_32X
p32x_sync_sh2s(cycles);
@@
-167,7
+165,7
@@
static int PicoFrameHints(void)
if (!skip)
{
if (!skip)
{
- if (DrawScanline < y)
+ if (
Pico.est.
DrawScanline < y)
PicoDrawSync(y - 1, 0);
#ifdef DRAW_FINISH_FUNC
DRAW_FINISH_FUNC();
PicoDrawSync(y - 1, 0);
#ifdef DRAW_FINISH_FUNC
DRAW_FINISH_FUNC();
@@
-219,7
+217,8
@@
static int PicoFrameHints(void)
}
#ifdef PICO_CD
}
#ifdef PICO_CD
- pcd_sync_s68k(cycles, 0);
+ if (PicoAHW & PAHW_MCD)
+ pcd_sync_s68k(cycles, 0);
#endif
#ifdef PICO_32X
p32x_sync_sh2s(cycles);
#endif
#ifdef PICO_32X
p32x_sync_sh2s(cycles);
@@
-228,11
+227,7
@@
static int PicoFrameHints(void)
// get samples from sound chips
if (y == 224 && PsndOut)
// get samples from sound chips
if (y == 224 && PsndOut)
- {
- if (ym2612.dacen && PsndDacLine <= y)
- PsndDoDAC(y);
PsndGetSamples(y);
PsndGetSamples(y);
- }
// Run scanline:
CPUS_RUN(CYCLES_M68K_LINE - CYCLES_M68K_VINT_LAG - CYCLES_M68K_ASD);
// Run scanline:
CPUS_RUN(CYCLES_M68K_LINE - CYCLES_M68K_VINT_LAG - CYCLES_M68K_ASD);
@@
-267,11
+262,12
@@
static int PicoFrameHints(void)
cycles = SekCyclesDone();
if (Pico.m.z80Run && !Pico.m.z80_reset && (PicoOpt&POPT_EN_Z80))
PicoSyncZ80(cycles);
cycles = SekCyclesDone();
if (Pico.m.z80Run && !Pico.m.z80_reset && (PicoOpt&POPT_EN_Z80))
PicoSyncZ80(cycles);
- if (PsndOut && ym2612.dacen && PsndDacLine <
= lines-1
)
- PsndDoDAC(lines
-
1);
+ if (PsndOut && ym2612.dacen && PsndDacLine <
lines
)
+ PsndDoDAC(lines
-
1);
#ifdef PICO_CD
#ifdef PICO_CD
- pcd_sync_s68k(cycles, 0);
+ if (PicoAHW & PAHW_MCD)
+ pcd_sync_s68k(cycles, 0);
#endif
#ifdef PICO_32X
p32x_sync_sh2s(cycles);
#endif
#ifdef PICO_32X
p32x_sync_sh2s(cycles);