all repos — mgba @ 3c8cf830839c36805bab0d89fb5e91770d2b4e97

mGBA Game Boy Advance Emulator

GB Video: Fix disabled Obj
Jeffrey Pfau jeffrey@endrift.com
Tue, 26 Jan 2016 20:58:45 -0800
commit

3c8cf830839c36805bab0d89fb5e91770d2b4e97

parent

2e77c45e06d33c52e4b55b5f1bc10a3fd4b9912c

1 files changed, 11 insertions(+), 9 deletions(-)

jump to
M src/gb/renderers/software.csrc/gb/renderers/software.c

@@ -158,15 +158,17 @@ softwareRenderer->row[x] = 0;

} } - int spriteHeight = 8; - if (GBRegisterLCDCIsObjSize(softwareRenderer->lcdc)) { - spriteHeight = 16; - } - int i; - for (i = 0; i < softwareRenderer->oamMax; ++i) { - // TODO: Sprite sizes - if (y >= softwareRenderer->obj[i]->y - 16 && y < softwareRenderer->obj[i]->y - 16 + spriteHeight) { - GBVideoSoftwareRendererDrawObj(softwareRenderer, softwareRenderer->obj[i], y); + if (GBRegisterLCDCIsObjEnable(softwareRenderer->lcdc)) { + int spriteHeight = 8; + if (GBRegisterLCDCIsObjSize(softwareRenderer->lcdc)) { + spriteHeight = 16; + } + int i; + for (i = 0; i < softwareRenderer->oamMax; ++i) { + // TODO: Sprite sizes + if (y >= softwareRenderer->obj[i]->y - 16 && y < softwareRenderer->obj[i]->y - 16 + spriteHeight) { + GBVideoSoftwareRendererDrawObj(softwareRenderer, softwareRenderer->obj[i], y); + } } }