In the command processor when FIFO_READ_POINTER is reading Is better return fifo.CPWritePointer instead fifo.CPReadPointer.

In this way it prevents wrong fifo.CPReadWriteDistance in the future. That should fix RE0 Issue 2846 and others "Warning: GFX FIFO: Unknown Opcode (0x4d)" in dual core mode. 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6485 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Marcos Vitali
2010-11-28 03:20:20 +00:00
parent 91eb729aaf
commit 88916a61da
2 changed files with 7 additions and 6 deletions

View File

@ -249,15 +249,15 @@ void Read16(u16& _rReturnValue, const u32 _Address)
return;
case FIFO_READ_POINTER_LO:
_rReturnValue = ReadLow (fifo.CPReadPointer);
//_rReturnValue = ReadLow (fifo.CPReadPointer);
// hack: CPU will always believe fifo is empty and on idle
//_rReturnValue = ReadLow (fifo.CPWritePointer);
_rReturnValue = ReadLow (fifo.CPWritePointer);
DEBUG_LOG(COMMANDPROCESSOR, "read FIFO_READ_POINTER_LO : %04x", _rReturnValue);
return;
case FIFO_READ_POINTER_HI:
_rReturnValue = ReadHigh(fifo.CPReadPointer);
//_rReturnValue = ReadHigh(fifo.CPReadPointer);
// hack: CPU will always believe fifo is empty and on idle
//_rReturnValue = ReadHigh(fifo.CPWritePointer);
_rReturnValue = ReadHigh(fifo.CPWritePointer);
DEBUG_LOG(COMMANDPROCESSOR, "read FIFO_READ_POINTER_HI : %04x", _rReturnValue);
return;