From daf3ce76e7a24699a26e041cc4c90f1717c75a35 Mon Sep 17 00:00:00 2001 From: Jeffrey Pfau Date: Wed, 13 May 2015 22:07:20 -0700 Subject: [PATCH] GBA Memory: Back out a hack that introduces incorrect behavior, even though it fixes a game --- CHANGES | 1 - src/gba/memory.c | 6 ------ 2 files changed, 7 deletions(-) diff --git a/CHANGES b/CHANGES index a1bfca4f5..d6c3f569a 100644 --- a/CHANGES +++ b/CHANGES @@ -15,7 +15,6 @@ Bugfixes: - GBA: Fix bounds-checking on EEPROM access - GBA Audio: FIFOs should not poll DMAs that are not scheduled for audio - GBA BIOS: Initialize a variable that may be uninitialized in very rare cases - - GBA Memory: Ensure changing the timing of a DMA reschedules it - GBA Memory: Allow SRAM to be 64kB - GBA Memory: Fix 32-bit loads from unaddress cartridge space - GBA Memory: Fix jumping to invalid memory when switching from Thumb to ARM diff --git a/src/gba/memory.c b/src/gba/memory.c index 74e8f7c95..6222cd006 100644 --- a/src/gba/memory.c +++ b/src/gba/memory.c @@ -1256,12 +1256,6 @@ uint16_t GBAMemoryWriteDMACNT_HI(struct GBA* gba, int dma, uint16_t control) { struct GBAMemory* memory = &gba->memory; struct GBADMA* currentDma = &memory->dma[dma]; int wasEnabled = GBADMARegisterIsEnable(currentDma->reg); - int oldTiming = GBADMARegisterGetTiming(currentDma->reg); - int newTiming = GBADMARegisterGetTiming(control); - // This is probably a huge hack...verify what this does on hardware - if (oldTiming && oldTiming != DMA_TIMING_CUSTOM && oldTiming != newTiming) { - wasEnabled = false; - } currentDma->reg = control; if (GBADMARegisterIsDRQ(currentDma->reg)) {