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

51 lines
1.0 KiB
C++

//////////////////////////////////////////////////////////////////////////
// Mapper074 //
//////////////////////////////////////////////////////////////////////////
class Mapper074 : public Mapper
{
public:
Mapper074( NES* parent ) : Mapper(parent) {}
void Reset();
BYTE ReadLow ( WORD addr );
void WriteLow( WORD addr, BYTE data );
void Write( WORD addr, BYTE data );
void HSync( INT scanline );
// For state save
BOOL IsStateSave() { return TRUE; }
void SaveState( LPBYTE p );
void LoadState( LPBYTE p );
protected:
BYTE reg[8];
BYTE prg0, prg1, prg2, prg3;
BYTE chr01, chr1, chr23, chr3, chr4, chr5, chr6, chr7;
BYTE irq_type;
BYTE irq_enable;
BYTE irq_counter;
BYTE irq_latch;
BYTE irq_request;
BYTE sp_rom, bank;
BYTE we_sram;
BYTE JMaddr, JMaddrDAT[3];
BYTE reg5000;
BYTE reg5001;
BYTE reg5002;
BYTE reg5003;
BYTE reg5010;
BYTE reg5011;
BYTE reg5012;
BYTE reg5013;
BYTE reg5FF3;
private:
void SetBank_CPU();
void SetBank_PPU();
void Decode_PROM();
};