AxibugEmuOnline/References/virtuanessrc097-master/NES/Mapper/Mapper016.h
2024-08-05 17:58:53 +08:00

45 lines
2.0 KiB
C++
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//////////////////////////////////////////////////////////////////////////
// Mapper016 Bandai Standard //
//////////////////////////////////////////////////////////////////////////
#include "EEPROM.h"
class Mapper016 : public Mapper
{
public:
Mapper016( 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 );
void Clock( INT cycles );
// For Datach Barcode Battler
void SetBarcodeData( LPBYTE code, INT len );
// For state save
BOOL IsStateSave() { return TRUE; }
void SaveState( LPBYTE p );
void LoadState( LPBYTE p );
protected:
BYTE patch; // For Famicom Jump 2
BYTE eeprom_type; // EEPROM type
BYTE reg[3];
BYTE irq_enable;
INT irq_counter;
INT irq_latch;
BYTE irq_type;
X24C01 x24c01;
X24C02 x24c02;
private:
void WriteSubA(WORD addr, BYTE data);
void WriteSubB(WORD addr, BYTE data);
};