enabled normmatt's modification to framebuffer modes
This commit is contained in:
parent
26a25f0126
commit
5d53948dec
|
@ -448,31 +448,11 @@ static INLINE void GPU_ligne(Screen * screen, u16 l)
|
||||||
return;
|
return;
|
||||||
case 2: // Display framebuffer
|
case 2: // Display framebuffer
|
||||||
{
|
{
|
||||||
int ii = l * 256 * 2;
|
//addition from Normatt
|
||||||
for (i=0; i<(256 * 2); i+=2)
|
|
||||||
{
|
|
||||||
u8 * vram = ARM9Mem.ARM9_LCD + (gpu->vramBlock * 0x20000);
|
|
||||||
T2WriteWord(dst, i, T1ReadWord(vram, ii));
|
|
||||||
ii+=2;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
case 3:
|
|
||||||
// Read from FIFO MAIN_MEMORY_DISP_FIFO, two pixels at once format is x555, bit15 unused
|
|
||||||
// Reference: http://nocash.emubase.de/gbatek.htm#dsvideocaptureandmainmemorydisplaymode
|
|
||||||
// (under DISP_MMEM_FIFO)
|
|
||||||
for (i=0; i<256;) {
|
|
||||||
c = FIFOValue(MMU.fifos + MAIN_MEMORY_DISP_FIFO);
|
|
||||||
T2WriteWord(dst, i << 1, c&0xFFFF); i++;
|
|
||||||
T2WriteWord(dst, i << 1, c>>16); i++;
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
//addition from Normatt
|
|
||||||
if (gpu->core==0)
|
if (gpu->core==0)
|
||||||
for(vram_bank=0; vram_bank<8; vram_bank++) {
|
{
|
||||||
|
/* we only draw one of the VRAM blocks */
|
||||||
|
vram_bank = gpu->dispCnt.bits.VRAM_Block ;
|
||||||
switch (MMU.vram_mode[vram_bank])
|
switch (MMU.vram_mode[vram_bank])
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
|
@ -493,7 +473,20 @@ static INLINE void GPU_ligne(Screen * screen, u16 l)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
}
|
||||||
|
return;
|
||||||
|
case 3:
|
||||||
|
// Read from FIFO MAIN_MEMORY_DISP_FIFO, two pixels at once format is x555, bit15 unused
|
||||||
|
// Reference: http://nocash.emubase.de/gbatek.htm#dsvideocaptureandmainmemorydisplaymode
|
||||||
|
// (under DISP_MMEM_FIFO)
|
||||||
|
for (i=0; i<256;) {
|
||||||
|
c = FIFOValue(MMU.fifos + MAIN_MEMORY_DISP_FIFO);
|
||||||
|
T2WriteWord(dst, i << 1, c&0xFFFF); i++;
|
||||||
|
T2WriteWord(dst, i << 1, c>>16); i++;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
c = T1ReadWord(ARM9Mem.ARM9_VMEM, gpu->core * 0x400);
|
c = T1ReadWord(ARM9Mem.ARM9_VMEM, gpu->core * 0x400);
|
||||||
c |= (c<<16);
|
c |= (c<<16);
|
||||||
|
|
Loading…
Reference in New Issue