RSP: Add delay slot done
This commit is contained in:
parent
a05ff4f3c2
commit
2c78b14b47
|
@ -30,6 +30,7 @@
|
|||
#include <stdlib.h>
|
||||
#include "RSP.h"
|
||||
#include "Cpu.h"
|
||||
#include "Interpreter CPU.h"
|
||||
#include "Recompiler CPU.h"
|
||||
#include "Recompiler Ops.h"
|
||||
#include "RSP registers.h"
|
||||
|
@ -849,6 +850,10 @@ void CompilerRSPBlock ( void ) {
|
|||
NextInstruction = DELAY_SLOT_DONE;
|
||||
CompilePC -= 4;
|
||||
break;
|
||||
case DELAY_SLOT_EXIT:
|
||||
NextInstruction = DELAY_SLOT_EXIT_DONE;
|
||||
CompilePC -= 4;
|
||||
break;
|
||||
case FINISH_SUB_BLOCK:
|
||||
NextInstruction = NORMAL;
|
||||
CompilePC += 8;
|
||||
|
@ -933,6 +938,10 @@ DWORD RunRecompilerCPU ( DWORD Cycles ) {
|
|||
if (Profiling && IndvidualBlock) {
|
||||
StopTimer();
|
||||
}
|
||||
if (RSP_NextInstruction == SINGLE_STEP)
|
||||
{
|
||||
RSP_Running = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
if (IsMmxEnabled == TRUE) {
|
||||
|
|
|
@ -26,13 +26,6 @@
|
|||
|
||||
#include "opcode.h"
|
||||
|
||||
#define NORMAL 0
|
||||
#define DO_DELAY_SLOT 1
|
||||
#define DELAY_SLOT 2
|
||||
#define DELAY_SLOT_DONE 3
|
||||
#define FINISH_BLOCK 4
|
||||
#define FINISH_SUB_BLOCK 5
|
||||
|
||||
extern DWORD CompilePC, NextInstruction;
|
||||
extern BOOL ChangedPC;
|
||||
|
||||
|
|
Loading…
Reference in New Issue