mirror of
https://github.com/dborth/snes9xgx.git
synced 2025-02-25 15:43:36 +01:00
Merge pull request #786 from bladeoner/movie
Backport Move S9xMovieUpdate to start of next frame.
This commit is contained in:
commit
7efbc1b59e
@ -3322,8 +3322,6 @@ void S9xControlEOF (void)
|
|||||||
|
|
||||||
do_polling(POLL_ALL);
|
do_polling(POLL_ALL);
|
||||||
|
|
||||||
S9xMovieUpdate();
|
|
||||||
|
|
||||||
pad_read_last = pad_read;
|
pad_read_last = pad_read;
|
||||||
pad_read = false;
|
pad_read = false;
|
||||||
}
|
}
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
#include "apu/apu.h"
|
#include "apu/apu.h"
|
||||||
#include "fxemu.h"
|
#include "fxemu.h"
|
||||||
#include "snapshot.h"
|
#include "snapshot.h"
|
||||||
|
#include "movie.h"
|
||||||
#ifdef DEBUGGER
|
#ifdef DEBUGGER
|
||||||
#include "debug.h"
|
#include "debug.h"
|
||||||
#include "missing.h"
|
#include "missing.h"
|
||||||
@ -19,7 +20,6 @@
|
|||||||
|
|
||||||
static inline void S9xReschedule (void);
|
static inline void S9xReschedule (void);
|
||||||
|
|
||||||
|
|
||||||
void S9xMainLoop (void)
|
void S9xMainLoop (void)
|
||||||
{
|
{
|
||||||
#define CHECK_FOR_IRQ_CHANGE() \
|
#define CHECK_FOR_IRQ_CHANGE() \
|
||||||
@ -32,6 +32,12 @@ void S9xMainLoop (void)
|
|||||||
Timings.IRQFlagChanging = IRQ_NONE; \
|
Timings.IRQFlagChanging = IRQ_NONE; \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (CPU.Flags & SCAN_KEYS_FLAG)
|
||||||
|
{
|
||||||
|
CPU.Flags &= ~SCAN_KEYS_FLAG;
|
||||||
|
S9xMovieUpdate();
|
||||||
|
}
|
||||||
|
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
if (CPU.NMIPending)
|
if (CPU.NMIPending)
|
||||||
@ -121,8 +127,16 @@ void S9xMainLoop (void)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (CPU.Flags & SCAN_KEYS_FLAG)
|
if (CPU.Flags & SCAN_KEYS_FLAG)
|
||||||
|
{
|
||||||
|
#ifdef DEBUGGER
|
||||||
|
if (!(CPU.Flags & FRAME_ADVANCE_FLAG))
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
S9xSyncSpeed();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
uint8 Op;
|
uint8 Op;
|
||||||
struct SOpcodes *Opcodes;
|
struct SOpcodes *Opcodes;
|
||||||
|
|
||||||
@ -156,15 +170,6 @@ void S9xMainLoop (void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
S9xPackStatus();
|
S9xPackStatus();
|
||||||
|
|
||||||
if (CPU.Flags & SCAN_KEYS_FLAG)
|
|
||||||
{
|
|
||||||
#ifdef DEBUGGER
|
|
||||||
if (!(CPU.Flags & FRAME_ADVANCE_FLAG))
|
|
||||||
#endif
|
|
||||||
S9xSyncSpeed();
|
|
||||||
CPU.Flags &= ~SCAN_KEYS_FLAG;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void S9xReschedule (void)
|
static inline void S9xReschedule (void)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user