Fix instruction cycle cost assertion check

This commit is contained in:
Jeff Parsons 2014-09-29 16:59:23 -07:00 • committed by jeffpar
commit 78045adb57
2 changed files with 5 additions and 0 deletions

View file

@ -1016,7 +1016,10 @@ CPU.prototype.setBurstCycles = function(nCycles)
var nDelta = this.nStepCycles - nCycles; var nDelta = this.nStepCycles - nCycles;
/* /*
* NOTE: If nDelta is negative, we will actually be increasing nStepCycles and nBurstCycles. * NOTE: If nDelta is negative, we will actually be increasing nStepCycles and nBurstCycles.
* Which is OK, but if we're also taking snapshots of the cycle counts, to make sure that instruction
* costs are being properly assessed, then we need to update nSnapCycles as well.
*/ */
if (DEBUG) this.nSnapCycles -= nDelta;
this.nStepCycles -= nDelta; this.nStepCycles -= nDelta;
this.nBurstCycles -= nDelta; this.nBurstCycles -= nDelta;
return true; return true;

View file

@ -2823,7 +2823,9 @@ var X86OpXX = {
var nInt = this.getIPByte(); var nInt = this.getIPByte();
if (this.checkInterruptNotify(nInt)) { if (this.checkInterruptNotify(nInt)) {
X86Help.opHelpINT.call(this, nInt, null, 0); X86Help.opHelpINT.call(this, nInt, null, 0);
return;
} }
this.nStepCycles--; // we don't need to assess the full cost of nOpCyclesInt, but we need to assess something...
}, },
/** /**
* @this {X86CPU} * @this {X86CPU}