AxibugEmuOnline/References/VirtuaNESex_src_191105/NES/Mapper/BoardKS7010.cpp
2024-08-05 17:58:53 +08:00

29 lines
759 B
C++

//////////////////////////////////////////////////////////////////////////
// BoardKS7010 EMC //
//////////////////////////////////////////////////////////////////////////
void BoardKS7010::Reset()
{
SetPROM_8K_Bank( 3, 0x0C );
SetPROM_32K_Bank( 0x0A, 0x0B, 0x06, 0x07 );
SetVROM_8K_Bank( 0x0C );
}
BYTE BoardKS7010::ReadLow( WORD addr )
{
if(addr==0x692C)
if((CPU_MEM_BANK[3][0x92C]==0xFE)&&(CPU_MEM_BANK[3][0x92D]==0xFA))
SetVROM_8K_Bank( 0x06 );
return Mapper::ReadLow( addr );
}
void BoardKS7010::ExWrite( WORD addr, BYTE data )
{
if(addr==0x4025)
if((RAM[0x602]>0)&&(RAM[0x602]<10)){
BYTE bank = (RAM[0x602]-4)&0x0F;
SetPROM_8K_Bank( 3, bank );
SetVROM_8K_Bank( bank );
}
}