implement screen swap.

silence some logging for 3D GPU writes.
This commit is contained in:
StapleButter
2017-02-01 21:57:25 +01:00
parent 282dcdece3
commit c19056a564
4 changed files with 41 additions and 8 deletions

20
NDS.cpp
View File

@ -178,6 +178,9 @@ void SetupDirectBoot()
ARM9->JumpTo(bootparams[1]);
ARM7->JumpTo(bootparams[5]);
PowerControl9 = 0x820F;
GPU::DisplaySwap(PowerControl9);
}
void Reset()
@ -271,7 +274,7 @@ void Reset()
// test
//LoadROM();
//LoadFirmware();
NDSCart::LoadROM("rom/mkds.nds");
NDSCart::LoadROM("rom/sm64ds.nds");
Running = true; // hax
}
@ -1412,6 +1415,11 @@ u32 ARM9IORead32(u32 addr)
{
return GPU::GPU2D_B->Read32(addr);
}
if (addr >= 0x04000320 && addr < 0x040006A4)
{
// 3D GPU
return 0;
}
printf("unknown ARM9 IO read32 %08X\n", addr);
return 0;
@ -1576,7 +1584,10 @@ void ARM9IOWrite16(u32 addr, u16 val)
PostFlag9 = val & 0x03;
return;
case 0x04000304: PowerControl9 = val; return;
case 0x04000304:
PowerControl9 = val;
GPU::DisplaySwap(PowerControl9>>15);
return;
}
if (addr >= 0x04000000 && addr < 0x04000060)
@ -1589,6 +1600,11 @@ void ARM9IOWrite16(u32 addr, u16 val)
GPU::GPU2D_B->Write16(addr, val);
return;
}
if (addr >= 0x04000320 && addr < 0x040006A4)
{
// 3D GPU
return;
}
printf("unknown ARM9 IO write16 %08X %04X\n", addr, val);
}