From c783b6d7b56916f62de53e50828355b214159a08 Mon Sep 17 00:00:00 2001 From: Akash Date: Fri, 13 Oct 2017 20:02:37 +0530 Subject: [PATCH] PS2-HW: Remove address of non-existent registers It seems not all DMA channels have the same set of 32 bit registers. Removed addresses of registers which aren't actually present in the memory space. Example: Channel 0/1/2 have address stack registers but the other channels lack it. According to documents, the remaining memory space of the channels seems to be reserved. Which means, write access would be disregarded and read access would return an unknown value. Credit goes to Gregory and CK1 for notifying me about it, special mention to ssakash for actually pushing the change to github. Also I wasn't the one who introduced the non-existent registers into the code, these registers were present before under a different name. --- pcsx2/Hw.h | 6 ------ pcsx2/ps2/eeHwTraceLog.inl | 1 - 2 files changed, 7 deletions(-) diff --git a/pcsx2/Hw.h b/pcsx2/Hw.h index a7a92ec6c6..6f2465a809 100644 --- a/pcsx2/Hw.h +++ b/pcsx2/Hw.h @@ -233,12 +233,10 @@ enum EERegisterAddresses D3_CHCR = 0x1000B000, D3_MADR = 0x1000B010, D3_QWC = 0x1000B020, - D3_TADR = 0x1000B030, fromIPU_CHCR = 0x1000B000, fromIPU_MADR = 0x1000B010, fromIPU_QWC = 0x1000B020, - fromIPU_TADR = 0x1000B030, //toIPU D4_CHCR = 0x1000B400, @@ -275,24 +273,20 @@ enum EERegisterAddresses D7_CHCR = 0x1000C800, D7_MADR = 0x1000C810, D7_QWC = 0x1000C820, - D7_TADR = 0x1000C830, SIF2_CHCR = 0x1000C800, SIF2_MADR = 0x1000C810, SIF2_QWC = 0x1000C820, - SIF2_TADR = 0x1000C830, //fromSPR D8_CHCR = 0x1000D000, D8_MADR = 0x1000D010, D8_QWC = 0x1000D020, - D8_TADR = 0x1000D030, D8_SADR = 0x1000D080, fromSPR_CHCR = 0x1000D000, fromSPR_MADR = 0x1000D010, fromSPR_QWC = 0x1000D020, - fromSPR_TADR = 0x1000D030, fromSPR_SADR = 0x1000D080, //toSPR diff --git a/pcsx2/ps2/eeHwTraceLog.inl b/pcsx2/ps2/eeHwTraceLog.inl index c4e904accd..7c0f361477 100644 --- a/pcsx2/ps2/eeHwTraceLog.inl +++ b/pcsx2/ps2/eeHwTraceLog.inl @@ -151,7 +151,6 @@ static __ri const char* _eelog_GetHwName( u32 addr, T val ) EasyCase(fromIPU_CHCR); EasyCase(fromIPU_MADR); EasyCase(fromIPU_QWC); - EasyCase(fromIPU_TADR); EasyCase(toIPU_CHCR); EasyCase(toIPU_MADR);