New "TAS Input" feature for precise joystick inputs. The feature is still a work in progress, but is functional. Currently overwrites any joystick/keyboard analog inputs and does so for all controllers.

Renamed OnFrame.cpp/h to a more accurate Movie.cpp/h. Made some small changes that may improve movie synchronization.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7620 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
baby.lueshi
2011-06-24 06:50:50 +00:00
parent 2309e36b28
commit d8fc690838
23 changed files with 131 additions and 71 deletions

View File

@ -22,7 +22,7 @@
#include "StringUtil.h"
#include "Thread.h"
#include "CoreTiming.h"
#include "OnFrame.h"
#include "Movie.h"
#include "HW/Wiimote.h"
#include "HW/DSP.h"
#include "HW/HW.h"
@ -235,9 +235,9 @@ void SaveFileStateCallback(u64 userdata, int cyclesLate)
p.SetMode(PointerWrap::MODE_WRITE);
DoState(p);
if ((Frame::IsRecordingInput() || Frame::IsPlayingInput()) && !Frame::IsRecordingInputFromSaveState())
Frame::SaveRecording((g_current_filename + ".dtm").c_str());
else if (!Frame::IsRecordingInput() && !Frame::IsPlayingInput())
if ((Movie::IsRecordingInput() || Movie::IsPlayingInput()) && !Movie::IsRecordingInputFromSaveState())
Movie::SaveRecording((g_current_filename + ".dtm").c_str());
else if (!Movie::IsRecordingInput() && !Movie::IsPlayingInput())
File::Delete(g_current_filename + ".dtm");
Core::DisplayMessage("Saving State...", 1000);
@ -345,9 +345,9 @@ void LoadFileStateCallback(u64 userdata, int cyclesLate)
Core::DisplayMessage("Unable to Load : Can't load state from other revisions !", 4000);
if (File::Exists(g_current_filename + ".dtm"))
Frame::LoadInput((g_current_filename + ".dtm").c_str());
else if (!Frame::IsRecordingInputFromSaveState())
Frame::EndPlayInput(false);
Movie::LoadInput((g_current_filename + ".dtm").c_str());
else if (!Movie::IsRecordingInputFromSaveState())
Movie::EndPlayInput(false);
}
g_op_in_progress = false;