X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=pico%2Fpico.c;h=6a065e67191ed5010427a6db984b5b237703dc2c;hb=8c8b72847259871bc50cd796383d9eeb83970bb1;hp=c63360c647f89b0de2df34972843d182edd37515;hpb=f6c49d38cbb965c502ca2af66d76e92f95acda7c;p=picodrive.git diff --git a/pico/pico.c b/pico/pico.c index c63360c..6a065e6 100644 --- a/pico/pico.c +++ b/pico/pico.c @@ -1,11 +1,11 @@ -// PicoDrive - -// (c) Copyright 2004 Dave, All rights reserved. -// (c) Copyright 2006-2008 notaz, All rights reserved. -// Free for non-commercial use. - -// For commercial use, separate licencing terms must be obtained. - +/* + * PicoDrive + * (c) Copyright Dave, 2004 + * (C) notaz, 2006-2010 + * + * This work is licensed under the terms of MAME license. + * See COPYING file in the top-level directory. + */ #include "pico_int.h" #include "sound/ym2612.h" @@ -23,6 +23,9 @@ struct PicoSRAM SRam; int emustatus; // rapid_ym2612, multi_ym_updates int scanlines_total; +int p32x_msh2_multiplier = MSH2_MULTI_DEFAULT; +int p32x_ssh2_multiplier = SSH2_MULTI_DEFAULT; + void (*PicoWriteSound)(int len) = NULL; // called at the best time to send sound buffer (PsndOut) to hardware void (*PicoResetHook)(void) = NULL; void (*PicoLineHook)(void) = NULL; @@ -192,10 +195,8 @@ int PicoReset(void) if (!(PicoOpt & POPT_DIS_IDLE_DET)) SekInitIdleDet(); - if (PicoOpt & POPT_EN_32X) { + if (PicoOpt & POPT_EN_32X) PicoReset32x(); - return 0; - } // reset sram state; enable sram access by default if it doesn't overlap with ROM Pico.m.sram_reg = 0; @@ -209,7 +210,7 @@ int PicoReset(void) return 0; } -// flush cinfig changes before emu loop starts +// flush config changes before emu loop starts void PicoLoopPrepare(void) { if (PicoRegionOverride) @@ -219,6 +220,9 @@ void PicoLoopPrepare(void) // FIXME: PAL has 313 scanlines.. scanlines_total = Pico.m.pal ? 312 : 262; + Pico.m.dirtyPal = 1; + rendstatus_old = -1; + if (PicoAHW & PAHW_32X) p32x_timers_recalc(); }