GPU: Allow DMAs in Mode 1

Exact behaviour is still unknown, but it works on console (Nicolas
Noble's torus demo).
This commit is contained in:
Stenzek 2024-07-02 14:55:22 +10:00
parent fbdeea7889
commit aabe39d0f8
No known key found for this signature in database

View file

@ -116,7 +116,10 @@ public:
// DMA access
void DMARead(u32* words, u32 word_count);
ALWAYS_INLINE bool BeginDMAWrite() const { return (m_GPUSTAT.dma_direction == DMADirection::CPUtoGP0); }
ALWAYS_INLINE bool BeginDMAWrite() const
{
return (m_GPUSTAT.dma_direction == DMADirection::CPUtoGP0 || m_GPUSTAT.dma_direction == DMADirection::FIFO);
}
ALWAYS_INLINE void DMAWrite(u32 address, u32 value)
{
m_fifo.Push((ZeroExtend64(address) << 32) | ZeroExtend64(value));