diff options
| author | Markus Wick <markus+github@selfnet.de> | 2014-12-10 06:53:11 +0100 |
|---|---|---|
| committer | Markus Wick <markus+github@selfnet.de> | 2014-12-10 06:53:11 +0100 |
| commit | 4c139ca7cc816489feffc0b6ee0a3f1a6d85060e (patch) | |
| tree | e16ae78d1428f5ae62e68541bc8fe46bd3693d34 /Source/Core/VideoCommon/XFStructs.cpp | |
| parent | 57d2469d93ca6e2d3e0efe7c0efa85dfb95ed9c0 (diff) | |
| parent | e88e63adb36d649903a54740d9580a491cd6bf0d (diff) | |
Merge pull request #1609 from degasus/datareader
VideoCommon: Datareader
Diffstat (limited to 'Source/Core/VideoCommon/XFStructs.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/XFStructs.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/Source/Core/VideoCommon/XFStructs.cpp b/Source/Core/VideoCommon/XFStructs.cpp index 0552aa0986..927fed8077 100644 --- a/Source/Core/VideoCommon/XFStructs.cpp +++ b/Source/Core/VideoCommon/XFStructs.cpp @@ -19,14 +19,14 @@ static void XFMemWritten(u32 transferSize, u32 baseAddress) VertexShaderManager::InvalidateXFRange(baseAddress, baseAddress + transferSize); } -static void XFRegWritten(int transferSize, u32 baseAddress) +static void XFRegWritten(int transferSize, u32 baseAddress, DataReader src) { u32 address = baseAddress; u32 dataIndex = 0; while (transferSize > 0 && address < 0x1058) { - u32 newValue = DataPeek<u32>(dataIndex * sizeof(u32)); + u32 newValue = src.Peek<u32>(dataIndex * sizeof(u32)); u32 nextAddress = address + 1; switch (address) @@ -193,7 +193,7 @@ static void XFRegWritten(int transferSize, u32 baseAddress) } } -void LoadXFReg(u32 transferSize, u32 baseAddress) +void LoadXFReg(u32 transferSize, u32 baseAddress, DataReader src) { // do not allow writes past registers if (baseAddress + transferSize > 0x1058) @@ -229,17 +229,17 @@ void LoadXFReg(u32 transferSize, u32 baseAddress) XFMemWritten(xfMemTransferSize, xfMemBase); for (u32 i = 0; i < xfMemTransferSize; i++) { - ((u32*)&xfmem)[xfMemBase + i] = DataRead<u32>(); + ((u32*)&xfmem)[xfMemBase + i] = src.Read<u32>(); } } // write to XF regs if (transferSize > 0) { - XFRegWritten(transferSize, baseAddress); + XFRegWritten(transferSize, baseAddress, src); for (u32 i = 0; i < transferSize; i++) { - ((u32*)&xfmem)[baseAddress + i] = DataRead<u32>(); + ((u32*)&xfmem)[baseAddress + i] = src.Read<u32>(); } } } |
