Fixed the command-line (Node) version of PCjs
This commit is contained in:
parent
14a55eb1fa
commit
24e3405331
5 changed files with 51 additions and 50 deletions
|
|
@ -351,8 +351,8 @@ function genMode(d, w, mrm, sGroup, sRO) {
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
sRegGet = "this.regSP";
|
sRegGet = "this.regSP";
|
||||||
sRegBTLo = "X86CPU.BACKTRACK.SP_LO";
|
sRegBTLo = "X86.BACKTRACK.SP_LO";
|
||||||
sRegBTHi = "X86CPU.BACKTRACK.SP_HI";
|
sRegBTHi = "X86.BACKTRACK.SP_HI";
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
sRegGet = "this.regBP";
|
sRegGet = "this.regBP";
|
||||||
|
|
@ -616,8 +616,8 @@ function genMode(d, w, mrm, sGroup, sRO) {
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
sModRegGet = "this.regSP";
|
sModRegGet = "this.regSP";
|
||||||
sModRegBTLo = "X86CPU.BACKTRACK.SP_LO";
|
sModRegBTLo = "X86.BACKTRACK.SP_LO";
|
||||||
sModRegBTHi = "X86CPU.BACKTRACK.SP_HI";
|
sModRegBTHi = "X86.BACKTRACK.SP_HI";
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
sModRegGet = "this.regBP";
|
sModRegGet = "this.regBP";
|
||||||
|
|
|
||||||
|
|
@ -131,6 +131,7 @@ if (typeof module !== 'undefined') {
|
||||||
global.EAFUNCS = EAFUNCS;
|
global.EAFUNCS = EAFUNCS;
|
||||||
global.FATARRAYS = FATARRAYS;
|
global.FATARRAYS = FATARRAYS;
|
||||||
global.TYPEDARRAYS = TYPEDARRAYS;
|
global.TYPEDARRAYS = TYPEDARRAYS;
|
||||||
|
global.BACKTRACK = BACKTRACK;
|
||||||
global.SAMPLER = SAMPLER;
|
global.SAMPLER = SAMPLER;
|
||||||
/*
|
/*
|
||||||
* TODO: When we're "required" by Node, should we return anything via module.exports?
|
* TODO: When we're "required" by Node, should we return anything via module.exports?
|
||||||
|
|
|
||||||
|
|
@ -326,6 +326,13 @@ var X86 = {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (BACKTRACK) {
|
||||||
|
X86.BACKTRACK = {
|
||||||
|
SP_LO: 0,
|
||||||
|
SP_HI: 0
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Some PS flags are stored directly in regPS, hence the "direct" designation.
|
* Some PS flags are stored directly in regPS, hence the "direct" designation.
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -429,13 +429,6 @@ X86CPU.PREFETCH = {
|
||||||
MASK: 0x7 // (X86CPU.PREFETCH.ARRAY - 1)
|
MASK: 0x7 // (X86CPU.PREFETCH.ARRAY - 1)
|
||||||
};
|
};
|
||||||
|
|
||||||
if (BACKTRACK) {
|
|
||||||
X86CPU.BACKTRACK = {
|
|
||||||
SP_LO: 0,
|
|
||||||
SP_HI: 0
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* initMemory(aMemBlocks, addrLimit, blockShift, blockLimit, blockMask)
|
* initMemory(aMemBlocks, addrLimit, blockShift, blockLimit, blockMask)
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -2798,7 +2798,7 @@ var X86Mods = {
|
||||||
opModMemWord20: function(fn) {
|
opModMemWord20: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regSI) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regSI) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndex;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndex;
|
||||||
|
|
@ -2812,7 +2812,7 @@ var X86Mods = {
|
||||||
opModMemWord21: function(fn) {
|
opModMemWord21: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regDI) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regDI) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexExtra;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexExtra;
|
||||||
|
|
@ -2826,7 +2826,7 @@ var X86Mods = {
|
||||||
opModMemWord22: function(fn) {
|
opModMemWord22: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regSI) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regSI) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexExtra;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexExtra;
|
||||||
|
|
@ -2840,7 +2840,7 @@ var X86Mods = {
|
||||||
opModMemWord23: function(fn) {
|
opModMemWord23: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regDI) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regDI) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndex;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndex;
|
||||||
|
|
@ -2854,7 +2854,7 @@ var X86Mods = {
|
||||||
opModMemWord24: function(fn) {
|
opModMemWord24: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, this.regSI), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, this.regSI), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBase;
|
this.nStepCycles -= this.CYCLES.nEACyclesBase;
|
||||||
|
|
@ -2868,7 +2868,7 @@ var X86Mods = {
|
||||||
opModMemWord25: function(fn) {
|
opModMemWord25: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, this.regDI), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, this.regDI), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBase;
|
this.nStepCycles -= this.CYCLES.nEACyclesBase;
|
||||||
|
|
@ -2882,7 +2882,7 @@ var X86Mods = {
|
||||||
opModMemWord26: function(fn) {
|
opModMemWord26: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, this.getIPWord()), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, this.getIPWord()), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesDisp;
|
||||||
|
|
@ -2896,7 +2896,7 @@ var X86Mods = {
|
||||||
opModMemWord27: function(fn) {
|
opModMemWord27: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, this.regBX), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, this.regBX), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBase;
|
this.nStepCycles -= this.CYCLES.nEACyclesBase;
|
||||||
|
|
@ -3694,7 +3694,7 @@ var X86Mods = {
|
||||||
opModMemWord60: function(fn) {
|
opModMemWord60: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regSI + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regSI + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
||||||
|
|
@ -3708,7 +3708,7 @@ var X86Mods = {
|
||||||
opModMemWord61: function(fn) {
|
opModMemWord61: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regDI + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regDI + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
||||||
|
|
@ -3722,7 +3722,7 @@ var X86Mods = {
|
||||||
opModMemWord62: function(fn) {
|
opModMemWord62: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regSI + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regSI + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
||||||
|
|
@ -3736,7 +3736,7 @@ var X86Mods = {
|
||||||
opModMemWord63: function(fn) {
|
opModMemWord63: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regDI + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regDI + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
||||||
|
|
@ -3750,7 +3750,7 @@ var X86Mods = {
|
||||||
opModMemWord64: function(fn) {
|
opModMemWord64: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regSI + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regSI + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -3764,7 +3764,7 @@ var X86Mods = {
|
||||||
opModMemWord65: function(fn) {
|
opModMemWord65: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regDI + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regDI + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -3778,7 +3778,7 @@ var X86Mods = {
|
||||||
opModMemWord66: function(fn) {
|
opModMemWord66: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -3792,7 +3792,7 @@ var X86Mods = {
|
||||||
opModMemWord67: function(fn) {
|
opModMemWord67: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.getIPDisp()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.getIPDisp()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -4590,7 +4590,7 @@ var X86Mods = {
|
||||||
opModMemWordA0: function(fn) {
|
opModMemWordA0: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regSI + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regSI + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
||||||
|
|
@ -4604,7 +4604,7 @@ var X86Mods = {
|
||||||
opModMemWordA1: function(fn) {
|
opModMemWordA1: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regDI + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.regDI + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
||||||
|
|
@ -4618,7 +4618,7 @@ var X86Mods = {
|
||||||
opModMemWordA2: function(fn) {
|
opModMemWordA2: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regSI + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regSI + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDispExtra;
|
||||||
|
|
@ -4632,7 +4632,7 @@ var X86Mods = {
|
||||||
opModMemWordA3: function(fn) {
|
opModMemWordA3: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regDI + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.regDI + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseIndexDisp;
|
||||||
|
|
@ -4646,7 +4646,7 @@ var X86Mods = {
|
||||||
opModMemWordA4: function(fn) {
|
opModMemWordA4: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regSI + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regSI + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -4660,7 +4660,7 @@ var X86Mods = {
|
||||||
opModMemWordA5: function(fn) {
|
opModMemWordA5: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regDI + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regDI + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -4674,7 +4674,7 @@ var X86Mods = {
|
||||||
opModMemWordA6: function(fn) {
|
opModMemWordA6: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segStack, ((this.regBP + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -4688,7 +4688,7 @@ var X86Mods = {
|
||||||
opModMemWordA7: function(fn) {
|
opModMemWordA7: function(fn) {
|
||||||
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.getIPWord()) & 0xffff)), this.regSP);
|
var w = fn.call(this, this.modEAWord(this.segData, ((this.regBX + this.getIPWord()) & 0xffff)), this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiMemLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiMemLo = X86.BACKTRACK.SP_LO; this.backTrack.btiMemHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
this.setEAWord(w);
|
this.setEAWord(w);
|
||||||
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
this.nStepCycles -= this.CYCLES.nEACyclesBaseDisp;
|
||||||
|
|
@ -10507,7 +10507,7 @@ var X86Mods = {
|
||||||
opModRegWordC4: function(fn) {
|
opModRegWordC4: function(fn) {
|
||||||
this.regAX = fn.call(this, this.regAX, this.regSP);
|
this.regAX = fn.call(this, this.regAX, this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiAL = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiAH = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiAL = X86.BACKTRACK.SP_LO; this.backTrack.btiAH = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -10600,7 +10600,7 @@ var X86Mods = {
|
||||||
opModRegWordCC: function(fn) {
|
opModRegWordCC: function(fn) {
|
||||||
this.regCX = fn.call(this, this.regCX, this.regSP);
|
this.regCX = fn.call(this, this.regCX, this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiCL = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiCH = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiCL = X86.BACKTRACK.SP_LO; this.backTrack.btiCH = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -10693,7 +10693,7 @@ var X86Mods = {
|
||||||
opModRegWordD4: function(fn) {
|
opModRegWordD4: function(fn) {
|
||||||
this.regDX = fn.call(this, this.regDX, this.regSP);
|
this.regDX = fn.call(this, this.regDX, this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiDL = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiDH = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiDL = X86.BACKTRACK.SP_LO; this.backTrack.btiDH = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -10786,7 +10786,7 @@ var X86Mods = {
|
||||||
opModRegWordDC: function(fn) {
|
opModRegWordDC: function(fn) {
|
||||||
this.regBX = fn.call(this, this.regBX, this.regSP);
|
this.regBX = fn.call(this, this.regBX, this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiBL = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiBH = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiBL = X86.BACKTRACK.SP_LO; this.backTrack.btiBH = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -10954,7 +10954,7 @@ var X86Mods = {
|
||||||
opModRegWordEC: function(fn) {
|
opModRegWordEC: function(fn) {
|
||||||
this.regBP = fn.call(this, this.regBP, this.regSP);
|
this.regBP = fn.call(this, this.regBP, this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiBPLo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiBPHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiBPLo = X86.BACKTRACK.SP_LO; this.backTrack.btiBPHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -11047,7 +11047,7 @@ var X86Mods = {
|
||||||
opModRegWordF4: function(fn) {
|
opModRegWordF4: function(fn) {
|
||||||
this.regSI = fn.call(this, this.regSI, this.regSP);
|
this.regSI = fn.call(this, this.regSI, this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiSILo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiSIHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiSILo = X86.BACKTRACK.SP_LO; this.backTrack.btiSIHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -11140,7 +11140,7 @@ var X86Mods = {
|
||||||
opModRegWordFC: function(fn) {
|
opModRegWordFC: function(fn) {
|
||||||
this.regDI = fn.call(this, this.regDI, this.regSP);
|
this.regDI = fn.call(this, this.regDI, this.regSP);
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
this.backTrack.btiDILo = X86CPU.BACKTRACK.SP_LO; this.backTrack.btiDIHi = X86CPU.BACKTRACK.SP_HI;
|
this.backTrack.btiDILo = X86.BACKTRACK.SP_LO; this.backTrack.btiDIHi = X86.BACKTRACK.SP_HI;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -16614,7 +16614,7 @@ var X86Mods = {
|
||||||
opModGrpWordC4: function(afnGrp, fnSrc) {
|
opModGrpWordC4: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[0].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[0].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -16718,7 +16718,7 @@ var X86Mods = {
|
||||||
opModGrpWordCC: function(afnGrp, fnSrc) {
|
opModGrpWordCC: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[1].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[1].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -16822,7 +16822,7 @@ var X86Mods = {
|
||||||
opModGrpWordD4: function(afnGrp, fnSrc) {
|
opModGrpWordD4: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[2].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[2].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -16926,7 +16926,7 @@ var X86Mods = {
|
||||||
opModGrpWordDC: function(afnGrp, fnSrc) {
|
opModGrpWordDC: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[3].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[3].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -17030,7 +17030,7 @@ var X86Mods = {
|
||||||
opModGrpWordE4: function(afnGrp, fnSrc) {
|
opModGrpWordE4: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[4].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[4].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -17134,7 +17134,7 @@ var X86Mods = {
|
||||||
opModGrpWordEC: function(afnGrp, fnSrc) {
|
opModGrpWordEC: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[5].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[5].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -17238,7 +17238,7 @@ var X86Mods = {
|
||||||
opModGrpWordF4: function(afnGrp, fnSrc) {
|
opModGrpWordF4: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[6].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[6].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
@ -17342,7 +17342,7 @@ var X86Mods = {
|
||||||
opModGrpWordFC: function(afnGrp, fnSrc) {
|
opModGrpWordFC: function(afnGrp, fnSrc) {
|
||||||
this.regSP = afnGrp[7].call(this, this.regSP, fnSrc.call(this));
|
this.regSP = afnGrp[7].call(this, this.regSP, fnSrc.call(this));
|
||||||
if (BACKTRACK) {
|
if (BACKTRACK) {
|
||||||
X86CPU.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86CPU.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
X86.BACKTRACK.SP_LO = this.backTrack.btiMemLo; X86.BACKTRACK.SP_HI = this.backTrack.btiMemHi;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue