Added prefetch timing approximation for 286/386 CPUs, with configurable memory timing.
This commit is contained in:
parent
c5889e311f
commit
1b73963997
33 changed files with 1139 additions and 261 deletions
|
|
@ -11,6 +11,7 @@ static int opAAA(uint32_t fetchdat)
|
|||
flags &= ~(A_FLAG | C_FLAG);
|
||||
AL &= 0xF;
|
||||
CLOCK_CYCLES(is486 ? 3 : 4);
|
||||
PREFETCH_RUN(is486 ? 3 : 4, 1, -1, 0,0,0,0, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -22,6 +23,7 @@ static int opAAD(uint32_t fetchdat)
|
|||
AH = 0;
|
||||
setznp16(AX);
|
||||
CLOCK_CYCLES((is486) ? 14 : 19);
|
||||
PREFETCH_RUN(is486 ? 14 : 19, 2, -1, 0,0,0,0, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -33,6 +35,7 @@ static int opAAM(uint32_t fetchdat)
|
|||
AL %= base;
|
||||
setznp16(AX);
|
||||
CLOCK_CYCLES((is486) ? 15 : 17);
|
||||
PREFETCH_RUN(is486 ? 15 : 17, 2, -1, 0,0,0,0, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -49,6 +52,7 @@ static int opAAS(uint32_t fetchdat)
|
|||
flags &= ~(A_FLAG | C_FLAG);
|
||||
AL &= 0xF;
|
||||
CLOCK_CYCLES(is486 ? 3 : 4);
|
||||
PREFETCH_RUN(is486 ? 3 : 4, 1, -1, 0,0,0,0, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -75,6 +79,7 @@ static int opDAA(uint32_t fetchdat)
|
|||
flags_rebuild();
|
||||
flags |= tempw;
|
||||
CLOCK_CYCLES(4);
|
||||
PREFETCH_RUN(4, 1, -1, 0,0,0,0, 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -102,6 +107,7 @@ static int opDAS(uint32_t fetchdat)
|
|||
flags_rebuild();
|
||||
flags |= tempw;
|
||||
CLOCK_CYCLES(4);
|
||||
PREFETCH_RUN(4, 1, -1, 0,0,0,0, 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue