Skip to content

Commit f836e23

Browse files
committed
cleanup
1 parent f1b4718 commit f836e23

File tree

5 files changed

+23
-21
lines changed

5 files changed

+23
-21
lines changed

src/core/gpu.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -446,7 +446,7 @@ uint32_t PCSX::GPU::gpuDmaChainSize(uint32_t addr) {
446446

447447
do {
448448
uint32_t header;
449-
if (usingMsan && addr >= PCSX::Memory::c_msanStart && addr < PCSX::Memory::c_msanEnd) {
449+
if (usingMsan && PCSX::Memory::inMsanRange(addr)) {
450450
addr &= 0xfffffffc;
451451
header = *(uint32_t *) (g_emulator->m_mem->m_msanRAM + (addr - PCSX::Memory::c_msanStart));
452452
} else {
@@ -699,7 +699,7 @@ void PCSX::GPU::chainedDMAWrite(const uint32_t *memory, uint32_t hwAddr) {
699699
do {
700700
uint32_t header;
701701
const uint32_t *feed;
702-
if (usingMsan && addr >= PCSX::Memory::c_msanStart && addr < PCSX::Memory::c_msanEnd) {
702+
if (usingMsan && PCSX::Memory::inMsanRange(addr)) {
703703
addr &= 0xfffffffc;
704704
const uint32_t *headerPtr = (uint32_t *) (g_emulator->m_mem->m_msanRAM + (addr - PCSX::Memory::c_msanStart));
705705
header = *headerPtr;

src/core/psxdma.cc

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ void dma6(uint32_t madr, uint32_t bcr, uint32_t chcr) {
9999
// already 32-bit size
100100
size = bcr;
101101

102-
if (PCSX::g_emulator->m_mem->msanInitialized() && madr >= PCSX::Memory::c_msanStart && madr < PCSX::Memory::c_msanEnd) {
103-
uint32_t msanAddress = madr - PCSX::Memory::c_msanStart;
102+
if (PCSX::g_emulator->m_mem->msanInitialized() && PCSX::Memory::inMsanRange(madr)) {
104103
while (bcr--) {
105104
// use write32 instead of the direct pointer so that the msan memory gets marked as usable
106105
PCSX::g_emulator->m_mem->write32(madr, PCSX::Memory::c_msanChainMarker);

src/core/psxhw.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ class HW {
5050
if ((chcr & 0x01000000) && mem->template isDMAEnabled<n>()) {
5151
uint32_t madr = mem->template getMADR<n>();
5252
bool usingMsan = g_emulator->m_mem->msanInitialized();
53-
if (usingMsan && madr >= Memory::c_msanStart && madr < Memory::c_msanEnd) {
53+
if (usingMsan && PCSX::Memory::inMsanRange(madr)) {
5454
madr &= 0xfffffffc;
5555
} else {
5656
madr &= 0x7ffffc;
@@ -75,8 +75,7 @@ class HW {
7575
uint32_t DMACommandCounter = 0;
7676

7777
do {
78-
uint32_t *madrAsPtr;
79-
if (usingMsan && madr >= Memory::c_msanStart && madr < Memory::c_msanEnd) {
78+
if (usingMsan && PCSX::Memory::inMsanRange(madr)) {
8079
madr &= 0xfffffffc;
8180
} else {
8281
madr &= 0x7ffffc;

src/core/psxmem.cc

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ uint8_t PCSX::Memory::read8(uint32_t address) {
278278
const auto pointer = (uint8_t *)m_readLUT[page];
279279
const bool pioConnected = g_emulator->settings.get<Emulator::SettingPIOConnected>().value;
280280

281-
if (msanInitialized() && address >= c_msanStart && address < c_msanEnd) {
281+
if (msanInitialized() && inMsanRange(address)) {
282282
uint32_t msanAddress = address - c_msanStart;
283283
if ((m_msanWrittenBitmap[msanAddress / 8] & (1 << (msanAddress % 8))) == 0) {
284284
g_system->log(LogClass::CPU, _("8-bit read from usable but uninitialized msan memory: %8.8lx\n"), address);
@@ -327,7 +327,7 @@ uint16_t PCSX::Memory::read16(uint32_t address) {
327327
const auto pointer = (uint8_t *)m_readLUT[page];
328328
const bool pioConnected = g_emulator->settings.get<Emulator::SettingPIOConnected>().value;
329329

330-
if (msanInitialized() && address >= c_msanStart && address < c_msanEnd) {
330+
if (msanInitialized() && inMsanRange(address)) {
331331
uint32_t msanAddress = address - c_msanStart;
332332
for (unsigned offset = 0; offset < 2; offset++) {
333333
if ((m_msanWrittenBitmap[(msanAddress + offset) / 8] & (1 << ((msanAddress + offset) % 8))) == 0) {
@@ -376,7 +376,7 @@ uint32_t PCSX::Memory::read32(uint32_t address, ReadType readType) {
376376
const auto pointer = (uint8_t *)m_readLUT[page];
377377
const bool pioConnected = g_emulator->settings.get<Emulator::SettingPIOConnected>().value;
378378

379-
if (msanInitialized() && address >= c_msanStart && address < c_msanEnd) {
379+
if (msanInitialized() && inMsanRange(address)) {
380380
uint32_t msanAddress = address - c_msanStart;
381381
for (unsigned offset = 0; offset < 4; offset++) {
382382
if ((m_msanWrittenBitmap[(msanAddress + offset) / 8] & (1 << ((msanAddress + offset) % 8))) == 0) {
@@ -501,7 +501,7 @@ void PCSX::Memory::write8(uint32_t address, uint32_t value) {
501501
const auto pointer = (uint8_t *)m_writeLUT[page];
502502
const bool pioConnected = g_emulator->settings.get<Emulator::SettingPIOConnected>().value;
503503

504-
if (msanInitialized() && address >= c_msanStart && address < c_msanEnd) {
504+
if (msanInitialized() && inMsanRange(address)) {
505505
uint32_t msanAddress = address - c_msanStart;
506506
if (m_msanBitmap[msanAddress / 8] & (1 << (msanAddress % 8))) {
507507
m_msanWrittenBitmap[msanAddress / 8] |= (1 << (msanAddress % 8));
@@ -538,7 +538,7 @@ void PCSX::Memory::write16(uint32_t address, uint32_t value) {
538538
const auto pointer = (uint8_t *)m_writeLUT[page];
539539
const bool pioConnected = g_emulator->settings.get<Emulator::SettingPIOConnected>().value;
540540

541-
if (msanInitialized() && address >= c_msanStart && address < c_msanEnd) {
541+
if (msanInitialized() && inMsanRange(address)) {
542542
uint32_t msanAddress = address - c_msanStart;
543543
if (m_msanBitmap[msanAddress / 8] & (1 << (msanAddress % 8))) {
544544
for (unsigned offset = 0; offset < 2; offset++) {
@@ -578,7 +578,7 @@ void PCSX::Memory::write32(uint32_t address, uint32_t value) {
578578
const auto pointer = (uint8_t *)m_writeLUT[page];
579579
const bool pioConnected = g_emulator->settings.get<Emulator::SettingPIOConnected>().value;
580580

581-
if (msanInitialized() && address >= c_msanStart && address < c_msanEnd) {
581+
if (msanInitialized() && inMsanRange(address)) {
582582
uint32_t msanAddress = address - c_msanStart;
583583
if (m_msanBitmap[msanAddress / 8] & (1 << (msanAddress % 8))) {
584584
for (unsigned offset = 0; offset < 4; offset++) {
@@ -877,7 +877,7 @@ void PCSX::Memory::msanFree(uint32_t ptr) {
877877
return;
878878
}
879879
// Check if the pointer is valid.
880-
if (ptr < c_msanStart || ptr >= c_msanEnd) {
880+
if (!inMsanRange(ptr)) {
881881
g_system->printf(_("Invalid pointer passed to MsanFree: %08x\n"), ptr);
882882
g_system->pause();
883883
return;
@@ -906,7 +906,7 @@ uint32_t PCSX::Memory::msanRealloc(uint32_t ptr, uint32_t size) {
906906
return 0;
907907
}
908908
// Check if the pointer is valid.
909-
if (ptr < c_msanStart || ptr >= c_msanEnd) {
909+
if (!inMsanRange(ptr)) {
910910
g_system->printf(_("Invalid pointer passed to MsanRealloc: %08x\n"), ptr);
911911
g_system->pause();
912912
return 0;
@@ -943,18 +943,18 @@ uint32_t PCSX::Memory::msanRealloc(uint32_t ptr, uint32_t size) {
943943
}
944944

945945
uint32_t PCSX::Memory::msanSetChainPtr(uint32_t headerAddr, uint32_t nextPtr, uint32_t wordCount) {
946-
if (headerAddr < c_msanStart || headerAddr >= c_msanEnd) {
946+
if (!inMsanRange(headerAddr)) {
947947
headerAddr &= 0xffffff;
948948
}
949-
if (nextPtr >= c_msanStart && nextPtr < c_msanEnd) {
949+
if (inMsanRange(nextPtr)) {
950950
// map the location of an entry to the real pointer it's supposed to contain
951951
m_msanChainRegistry[headerAddr] = nextPtr;
952952
return c_msanChainMarker | wordCount << 24;
953953
}
954954
return (nextPtr & 0xffffff) | wordCount << 24;
955955
}
956956

957-
uint32_t PCSX::Memory::msanGetChainPtr(uint32_t headerAddr) {
957+
uint32_t PCSX::Memory::msanGetChainPtr(uint32_t headerAddr) const {
958958
auto it = m_msanChainRegistry.find(headerAddr);
959959
if (it == m_msanChainRegistry.end()) {
960960
g_system->printf(_("Unregistered msan chain header at %08x\n"), headerAddr);

src/core/psxmem.h

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,16 @@ class Memory {
7878
static constexpr uint16_t DMA_ICR = 0x10f4;
7979

8080
void initMsan(bool reset);
81-
bool msanInitialized() { return m_msanRAM != nullptr; }
81+
inline bool msanInitialized() const { return m_msanRAM != nullptr; }
8282
uint32_t msanAlloc(uint32_t size);
8383
void msanFree(uint32_t ptr);
8484
uint32_t msanRealloc(uint32_t ptr, uint32_t size);
8585
uint32_t msanSetChainPtr(uint32_t headerAddr, uint32_t ptrToNext, uint32_t size);
86-
uint32_t msanGetChainPtr(uint32_t addr);
86+
uint32_t msanGetChainPtr(uint32_t addr) const;
87+
88+
static inline bool inMsanRange(uint32_t addr) {
89+
return addr >= c_msanStart && addr < c_msanEnd;
90+
}
8791

8892
template <unsigned n>
8993
void dmaInterrupt() {
@@ -139,7 +143,7 @@ class Memory {
139143

140144
template <unsigned n>
141145
void setMADR(uint32_t value) {
142-
if (!msanInitialized() || value < c_msanStart || value >= c_msanEnd) {
146+
if (!msanInitialized() || !inMsanRange(value)) {
143147
value &= 0xffffff;
144148
}
145149
writeHardwareRegister<DMA_BASE + DMA_MADR + n * 0x10>(value);

0 commit comments

Comments
 (0)