movie.cpp, tasedit.cpp, tasedit.h: Invalidate greenzone when re-recording earlier portions of a movie.
condebug.cpp: Fix comments to match code.
This commit is contained in:
parent
a6bcf003d5
commit
d8f2b333b7
|
@ -1,3 +1,4 @@
|
|||
11-nov-2010 - mart0258 - TasEdit - Invalidate greenzone when re-recording earlier portions of a movie.
|
||||
09-oct-2010 - zeromus - fix bug in new ppu that made some intensify bits not get applied to output (fixes flashing siren screen in werefolf
|
||||
09-oct-2010 - gocha - win32 - Ram Watch - fix the multiple selection of watches
|
||||
09-oct-2010 - gocha - Win32 - Ram Search - multiple selection of addresses, fix restoration of the selection range
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
* Compare -> Sum {('==' | '!=' | '<=' | '>=' | '<' | '>') Sum}
|
||||
* Sum -> Product {('+' | '-') Product}
|
||||
* Product -> Primitive {('*' | '/') Primitive}
|
||||
* Primitive -> Number | Address | Register | Flag | '(' Connect ')'
|
||||
* Primitive -> Number | Address | Register | Flag | PC Bank | '(' Connect ')'
|
||||
* Number -> '#' [1-9A-F]*
|
||||
* Address -> '$' [1-9A-F]* | '$' '[' Connect ']'
|
||||
* Register -> 'A' | 'X' | 'Y' | 'R'
|
||||
|
@ -228,7 +228,7 @@ Condition* Primitive(const char** str, Condition* c)
|
|||
|
||||
return c;
|
||||
}
|
||||
else if (isBank(next)) /* Registers */
|
||||
else if (isBank(next)) /* PC Bank */
|
||||
{
|
||||
if (c->type1 == TYPE_NO)
|
||||
{
|
||||
|
@ -322,9 +322,9 @@ Condition* Primitive(const char** str, Condition* c)
|
|||
Condition* Term(const char** str)
|
||||
{
|
||||
Condition* t;
|
||||
Condition* t1;
|
||||
Condition* t1;
|
||||
Condition* mid;
|
||||
|
||||
|
||||
t = (Condition*)FCEU_dmalloc(sizeof(Condition));
|
||||
if (!t)
|
||||
return NULL;
|
||||
|
|
|
@ -262,7 +262,7 @@ bool JumpToFrame(int index)
|
|||
/* Handle jumps outside greenzone. */
|
||||
if (index>currMovieData.greenZoneCount)
|
||||
{
|
||||
if (JumpToFrame(currMovieData.greenZoneCount))
|
||||
if (JumpToFrame(currMovieData.greenZoneCount-1))
|
||||
{
|
||||
if (FCEUI_EmulationPaused())
|
||||
FCEUI_ToggleEmulationPause();
|
||||
|
@ -278,8 +278,8 @@ bool JumpToFrame(int index)
|
|||
if (static_cast<unsigned int>(index)<currMovieData.records.size() &&
|
||||
currMovieData.loadTasSavestate(index))
|
||||
{
|
||||
currFrameCounter = index;
|
||||
return true;
|
||||
currFrameCounter = index;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -357,7 +357,6 @@ void DoubleClick(LPNMITEMACTIVATE info)
|
|||
currMovieData.records[index].toggleBit(joy,bit);
|
||||
|
||||
ListView_Update(hwndList,index);
|
||||
|
||||
}
|
||||
|
||||
InvalidateGreenZone(index);
|
||||
|
@ -970,6 +969,23 @@ static void Export()
|
|||
}
|
||||
}
|
||||
|
||||
static void Truncate()
|
||||
{
|
||||
int frame = currFrameCounter;
|
||||
|
||||
if (selectionFrames.size()>0)
|
||||
{
|
||||
frame=*selectionFrames.begin();
|
||||
JumpToFrame(frame);
|
||||
}
|
||||
|
||||
currMovieData.truncateAt(frame+1);
|
||||
InvalidateGreenZone(frame);
|
||||
currMovieData.TryDumpIncremental();
|
||||
UpdateTasEdit();
|
||||
|
||||
}
|
||||
|
||||
//likewise, handles a changed item range from the listview
|
||||
static void ItemRangeChanged(NMLVODSTATECHANGE* info)
|
||||
{
|
||||
|
@ -1156,11 +1172,7 @@ BOOL CALLBACK WndprocTasEdit(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPar
|
|||
case ID_CONTEXT_SELECTED_TRUNCATE:
|
||||
case ID_CONTEXT_STRAY_TRUNCATE:
|
||||
case IDC_HACKY1:
|
||||
//hacky1: delete all items after the current selection
|
||||
currMovieData.truncateAt(currFrameCounter+1);
|
||||
InvalidateGreenZone(currFrameCounter);
|
||||
currMovieData.TryDumpIncremental();
|
||||
UpdateTasEdit();
|
||||
Truncate();
|
||||
break;
|
||||
|
||||
case IDC_HACKY2:
|
||||
|
|
|
@ -3,3 +3,4 @@
|
|||
void DoTasEdit();
|
||||
void UpdateTasEdit();
|
||||
void CreateProject(MovieData data);
|
||||
void InvalidateGreenZone(int after);
|
||||
|
|
|
@ -1113,6 +1113,10 @@ void FCEUMOV_AddInputState()
|
|||
}
|
||||
else
|
||||
{
|
||||
if (currMovieData.greenZoneCount>currFrameCounter+1)
|
||||
{
|
||||
InvalidateGreenZone(currFrameCounter);
|
||||
}
|
||||
joyports[0].log(mr);
|
||||
joyports[1].log(mr);
|
||||
mr->commands = 0;
|
||||
|
|
Loading…
Reference in New Issue