From 5fb2cfde1db99c351986488955301bfb7766d224 Mon Sep 17 00:00:00 2001 From: Jeffrey Pfau Date: Tue, 19 Jan 2016 22:09:11 -0800 Subject: [PATCH] GB Memory: VRAM access --- src/gb/memory.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/gb/memory.c b/src/gb/memory.c index ddfd3f2a8..50a92b3d7 100644 --- a/src/gb/memory.c +++ b/src/gb/memory.c @@ -134,8 +134,7 @@ uint8_t GBLoad8(struct LR35902Core* cpu, uint16_t address) { return memory->romBank[address & (GB_SIZE_CART_BANK0 - 1)]; case GB_REGION_VRAM: case GB_REGION_VRAM + 1: - // TODO - return 0; + return gb->video.vram[address & (GB_SIZE_VRAM - 1)]; case GB_REGION_EXTERNAL_RAM: case GB_REGION_EXTERNAL_RAM + 1: // TODO @@ -183,7 +182,9 @@ void GBStore8(struct LR35902Core* cpu, uint16_t address, int8_t value) { return; case GB_REGION_VRAM: case GB_REGION_VRAM + 1: - // TODO + // TODO: Block access in wrong modes + gb->video.vram[address & (GB_SIZE_VRAM - 1)] = value; + gb->video.renderer->writeVRAM(gb->video.renderer, address & (GB_SIZE_VRAM - 1)); return; case GB_REGION_EXTERNAL_RAM: case GB_REGION_EXTERNAL_RAM + 1: