2010-06-14 21:14:58 +00:00
|
|
|
class CPifRamSettings
|
|
|
|
{
|
|
|
|
protected:
|
|
|
|
CPifRamSettings();
|
|
|
|
virtual ~CPifRamSettings();
|
|
|
|
|
|
|
|
inline bool bShowPifRamErrors ( void ) const { return m_bShowPifRamErrors; }
|
|
|
|
|
|
|
|
private:
|
|
|
|
static void RefreshSettings ( void * );
|
|
|
|
|
|
|
|
static bool m_bShowPifRamErrors;
|
|
|
|
|
|
|
|
static int m_RefCount;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
class CPifRam :
|
|
|
|
private CPifRamSettings,
|
2012-10-05 23:53:11 +00:00
|
|
|
private CGameSettings,
|
2010-06-14 21:14:58 +00:00
|
|
|
private CEeprom
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
public:
|
|
|
|
CPifRam ( bool SavesReadOnly );
|
|
|
|
~CPifRam ( void );
|
|
|
|
|
2011-01-02 10:40:00 +00:00
|
|
|
void Reset ( void );
|
|
|
|
|
2010-06-14 21:14:58 +00:00
|
|
|
void PifRamWrite ( void );
|
|
|
|
void PifRamRead ( void );
|
|
|
|
|
|
|
|
void SI_DMA_READ ( void );
|
|
|
|
void SI_DMA_WRITE ( void );
|
|
|
|
|
|
|
|
protected:
|
|
|
|
BYTE m_PifRom[0x7C0];
|
|
|
|
BYTE m_PifRam[0x40];
|
|
|
|
|
|
|
|
private:
|
2012-09-26 10:26:17 +00:00
|
|
|
#define CHALLENGE_LENGTH 0x20
|
2010-06-14 21:14:58 +00:00
|
|
|
void ProcessControllerCommand ( int Control, BYTE * Command );
|
|
|
|
void ReadControllerCommand ( int Control, BYTE * Command );
|
|
|
|
void LogControllerPakData ( char * Description );
|
2012-09-26 10:26:17 +00:00
|
|
|
void n64_cic_nus_6105 (char challenge[], char response[], int length);
|
2010-06-14 21:14:58 +00:00
|
|
|
};
|