tried to add core A - direct RAM display mode

This commit is contained in:
damdoum 2007-01-09 13:59:38 +00:00
parent c21a0372e9
commit bdfb144695
2 changed files with 23 additions and 2 deletions

View File

@ -143,6 +143,19 @@ void GPU_setVideoProp(GPU * gpu, u32 p)
gpu->vramBlock = cnt->VRAM_Block;
return;
case 3: // Display from Main RAM
{
/* would need a test to see if it works */
// u16 x,y; u32 c;
// u16 * dst = GPU_screen;
// for (y=0; y<192; y++)
// for (x=0; x<256; x+=2) {
// c = FIFOValue(REG_DISPA_DISPMMEMFIFO);
// T2WriteWord(dst, 0, c&0xFFFF); dst++;
// T2WriteWord(dst, 0, c>>16); dst++;
// }
}
LOG("FIXME: Display Mode 3 not supported(Display from Main RAM)\n");
return;
}

View File

@ -27,6 +27,7 @@
#include "ARM9.h"
#include <stdio.h>
#include "mem.h"
#include "registers.h"
#ifdef __cplusplus
extern "C" {
@ -278,7 +279,7 @@ static INLINE void GPU_ligne(Screen * screen, u16 l)
u8 i8;
u16 i16;
u32 c;
// This could almost be changed to use function pointers
switch (gpu->dispMode)
{
@ -304,7 +305,14 @@ static INLINE void GPU_ligne(Screen * screen, u16 l)
}
return;
}
case 3: // Display from Main RAM(FIX ME)
case 3:
// it is just a wild wild guess (WWG)
// I dont need a game using this mode ...
for (i=0; i<256;) {
c = FIFOValue(REG_DISPA_DISPMMEMFIFO);
T2WriteWord(dst, i << 1, c&0xFFFF); i++;
T2WriteWord(dst, i << 1, c>>16); i++;
}
return;
}