Project64-core: General Code clean up
This commit is contained in:
parent
d88ea539b1
commit
7e80d952cb
|
@ -287,7 +287,7 @@ void CInterpreterCPU::ExecuteCPU()
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (CDebugSettings::HaveDebugger())
|
if (HaveDebugger())
|
||||||
{
|
{
|
||||||
if (HaveExecutionBP() && g_Debugger->ExecutionBP(PROGRAM_COUNTER))
|
if (HaveExecutionBP() && g_Debugger->ExecutionBP(PROGRAM_COUNTER))
|
||||||
{
|
{
|
||||||
|
|
|
@ -11,22 +11,22 @@ public:
|
||||||
CAudio();
|
CAudio();
|
||||||
~CAudio();
|
~CAudio();
|
||||||
|
|
||||||
uint32_t GetLength ();
|
uint32_t GetLength();
|
||||||
uint32_t GetStatus ();
|
uint32_t GetStatus();
|
||||||
void LenChanged ();
|
void LenChanged();
|
||||||
void InterruptTimerDone();
|
void InterruptTimerDone();
|
||||||
void BusyTimerDone ();
|
void BusyTimerDone();
|
||||||
void Reset ();
|
void Reset();
|
||||||
void SetViIntr ( uint32_t VI_INTR_TIME );
|
void SetViIntr(uint32_t VI_INTR_TIME);
|
||||||
void SetFrequency ( uint32_t Dacrate, uint32_t System );
|
void SetFrequency(uint32_t Dacrate, uint32_t System);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
CAudio(const CAudio&);
|
CAudio(const CAudio&);
|
||||||
CAudio& operator=(const CAudio&);
|
CAudio& operator=(const CAudio&);
|
||||||
|
|
||||||
uint32_t m_SecondBuff;
|
uint32_t m_SecondBuff;
|
||||||
uint32_t m_Status;
|
uint32_t m_Status;
|
||||||
uint32_t m_BytesPerSecond;
|
uint32_t m_BytesPerSecond;
|
||||||
int32_t m_CountsPerByte;
|
int32_t m_CountsPerByte;
|
||||||
int32_t m_FramesPerSecond;
|
int32_t m_FramesPerSecond;
|
||||||
};
|
};
|
||||||
|
|
|
@ -50,7 +50,7 @@ void CDMA::PI_DMA_READ()
|
||||||
g_Debugger->PIDMAReadStarted();
|
g_Debugger->PIDMAReadStarted();
|
||||||
}
|
}
|
||||||
|
|
||||||
// PI_STATUS_REG |= PI_STATUS_DMA_BUSY;
|
// PI_STATUS_REG |= PI_STATUS_DMA_BUSY;
|
||||||
uint32_t PI_RD_LEN_REG = ((g_Reg->PI_RD_LEN_REG) & 0x00FFFFFFul) + 1;
|
uint32_t PI_RD_LEN_REG = ((g_Reg->PI_RD_LEN_REG) & 0x00FFFFFFul) + 1;
|
||||||
|
|
||||||
if ((PI_RD_LEN_REG & 1) != 0)
|
if ((PI_RD_LEN_REG & 1) != 0)
|
||||||
|
|
|
@ -51,11 +51,11 @@ public:
|
||||||
static void ReserveMemory();
|
static void ReserveMemory();
|
||||||
static void FreeReservedMemory();
|
static void FreeReservedMemory();
|
||||||
|
|
||||||
bool Initialize(bool SyncSystem);
|
bool Initialize(bool SyncSystem);
|
||||||
void Reset(bool EraseMemory);
|
void Reset(bool EraseMemory);
|
||||||
|
|
||||||
uint8_t * Rdram();
|
uint8_t * Rdram();
|
||||||
uint32_t RdramSize();
|
uint32_t RdramSize();
|
||||||
uint8_t * Dmem();
|
uint8_t * Dmem();
|
||||||
uint8_t * Imem();
|
uint8_t * Imem();
|
||||||
uint8_t * PifRam();
|
uint8_t * PifRam();
|
||||||
|
@ -63,36 +63,37 @@ public:
|
||||||
CSram * GetSram();
|
CSram * GetSram();
|
||||||
CFlashram * GetFlashram();
|
CFlashram * GetFlashram();
|
||||||
|
|
||||||
bool LB_VAddr(uint32_t VAddr, uint8_t & Value);
|
bool LB_VAddr(uint32_t VAddr, uint8_t & Value);
|
||||||
bool LH_VAddr(uint32_t VAddr, uint16_t & Value);
|
bool LH_VAddr(uint32_t VAddr, uint16_t & Value);
|
||||||
bool LW_VAddr(uint32_t VAddr, uint32_t & Value);
|
bool LW_VAddr(uint32_t VAddr, uint32_t & Value);
|
||||||
bool LD_VAddr(uint32_t VAddr, uint64_t & Value);
|
bool LD_VAddr(uint32_t VAddr, uint64_t & Value);
|
||||||
|
|
||||||
bool LB_PAddr(uint32_t PAddr, uint8_t & Value);
|
bool LB_PAddr(uint32_t PAddr, uint8_t & Value);
|
||||||
bool LH_PAddr(uint32_t PAddr, uint16_t & Value);
|
bool LH_PAddr(uint32_t PAddr, uint16_t & Value);
|
||||||
bool LW_PAddr(uint32_t PAddr, uint32_t & Value);
|
bool LW_PAddr(uint32_t PAddr, uint32_t & Value);
|
||||||
bool LD_PAddr(uint32_t PAddr, uint64_t & Value);
|
bool LD_PAddr(uint32_t PAddr, uint64_t & Value);
|
||||||
|
|
||||||
bool SB_VAddr(uint32_t VAddr, uint8_t Value);
|
bool SB_VAddr(uint32_t VAddr, uint8_t Value);
|
||||||
bool SH_VAddr(uint32_t VAddr, uint16_t Value);
|
bool SH_VAddr(uint32_t VAddr, uint16_t Value);
|
||||||
bool SW_VAddr(uint32_t VAddr, uint32_t Value);
|
bool SW_VAddr(uint32_t VAddr, uint32_t Value);
|
||||||
bool SD_VAddr(uint32_t VAddr, uint64_t Value);
|
bool SD_VAddr(uint32_t VAddr, uint64_t Value);
|
||||||
|
|
||||||
bool SB_PAddr(uint32_t PAddr, uint8_t Value);
|
bool SB_PAddr(uint32_t PAddr, uint8_t Value);
|
||||||
bool SH_PAddr(uint32_t PAddr, uint16_t Value);
|
bool SH_PAddr(uint32_t PAddr, uint16_t Value);
|
||||||
bool SW_PAddr(uint32_t PAddr, uint32_t Value);
|
bool SW_PAddr(uint32_t PAddr, uint32_t Value);
|
||||||
bool SD_PAddr(uint32_t PAddr, uint64_t Value);
|
bool SD_PAddr(uint32_t PAddr, uint64_t Value);
|
||||||
|
|
||||||
int32_t MemoryFilter(uint32_t dwExptCode, void * lpExceptionPointer);
|
int32_t MemoryFilter(uint32_t dwExptCode, void * lpExceptionPointer);
|
||||||
void UpdateFieldSerration(uint32_t interlaced);
|
void UpdateFieldSerration(uint32_t interlaced);
|
||||||
|
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
static bool SetupSegvHandler(void);
|
static bool SetupSegvHandler(void);
|
||||||
static void segv_handler(int signal, siginfo_t *siginfo, void *sigcontext);
|
static void segv_handler(int signal, siginfo_t *siginfo, void *sigcontext);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Protect the memory from being written to
|
// Protect the memory from being written to
|
||||||
void ProtectMemory(uint32_t StartVaddr, uint32_t EndVaddr);
|
void ProtectMemory(uint32_t StartVaddr, uint32_t EndVaddr);
|
||||||
void UnProtectMemory(uint32_t StartVaddr, uint32_t EndVaddr);
|
void UnProtectMemory(uint32_t StartVaddr, uint32_t EndVaddr);
|
||||||
|
|
||||||
// Functions for TLB notification
|
// Functions for TLB notification
|
||||||
void TLB_Mapped(uint32_t VAddr, uint32_t Len, uint32_t PAddr, bool bReadOnly);
|
void TLB_Mapped(uint32_t VAddr, uint32_t Len, uint32_t PAddr, bool bReadOnly);
|
||||||
|
@ -180,36 +181,25 @@ private:
|
||||||
static void DumpArmExceptionInfo(uint32_t MemAddress, mcontext_t & context);
|
static void DumpArmExceptionInfo(uint32_t MemAddress, mcontext_t & context);
|
||||||
static bool FilterArmException(uint32_t MemAddress, mcontext_t & context);
|
static bool FilterArmException(uint32_t MemAddress, mcontext_t & context);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Memory locations
|
|
||||||
static uint8_t * m_Reserve1, *m_Reserve2;
|
|
||||||
uint8_t * m_RDRAM, *m_DMEM, *m_IMEM;
|
|
||||||
uint32_t m_AllocatedRdramSize;
|
|
||||||
|
|
||||||
// ROM information
|
|
||||||
bool m_RomMapped;
|
|
||||||
uint8_t * m_Rom;
|
|
||||||
uint32_t m_RomSize;
|
|
||||||
bool m_RomWrittenTo;
|
|
||||||
uint32_t m_RomWroteValue;
|
|
||||||
|
|
||||||
// DDRom information
|
|
||||||
bool m_DDRomMapped;
|
|
||||||
uint8_t * m_DDRom;
|
|
||||||
uint32_t m_DDRomSize;
|
|
||||||
|
|
||||||
//Current half line
|
|
||||||
void UpdateHalfLine();
|
void UpdateHalfLine();
|
||||||
uint32_t m_HalfLine;
|
|
||||||
uint32_t m_HalfLineCheck;
|
|
||||||
uint32_t m_FieldSerration;
|
|
||||||
|
|
||||||
// Initializing and resetting information about the memory system
|
|
||||||
void FreeMemory();
|
void FreeMemory();
|
||||||
|
|
||||||
mutable char m_strLabelName[100];
|
static uint8_t * m_Reserve1, *m_Reserve2;
|
||||||
|
uint8_t * m_RDRAM, *m_DMEM, *m_IMEM;
|
||||||
|
uint32_t m_AllocatedRdramSize;
|
||||||
|
bool m_RomMapped;
|
||||||
|
uint8_t * m_Rom;
|
||||||
|
uint32_t m_RomSize;
|
||||||
|
bool m_RomWrittenTo;
|
||||||
|
uint32_t m_RomWroteValue;
|
||||||
|
bool m_DDRomMapped;
|
||||||
|
uint8_t * m_DDRom;
|
||||||
|
uint32_t m_DDRomSize;
|
||||||
|
uint32_t m_HalfLine;
|
||||||
|
uint32_t m_HalfLineCheck;
|
||||||
|
uint32_t m_FieldSerration;
|
||||||
|
|
||||||
// Big look up table to quickly translate the TLB to real memory addresses
|
mutable char m_strLabelName[100];
|
||||||
size_t * m_TLB_ReadMap;
|
size_t * m_TLB_ReadMap;
|
||||||
size_t * m_TLB_WriteMap;
|
size_t * m_TLB_WriteMap;
|
||||||
|
|
||||||
|
|
|
@ -586,36 +586,6 @@ class CRegisters :
|
||||||
public:
|
public:
|
||||||
CRegisters(CN64System * System, CSystemEvents * SystemEvents);
|
CRegisters(CN64System * System, CSystemEvents * SystemEvents);
|
||||||
|
|
||||||
// General registers
|
|
||||||
uint32_t m_PROGRAM_COUNTER;
|
|
||||||
MIPS_DWORD m_GPR[32];
|
|
||||||
uint32_t m_CP0[33];
|
|
||||||
MIPS_DWORD m_HI;
|
|
||||||
MIPS_DWORD m_LO;
|
|
||||||
uint32_t m_LLBit;
|
|
||||||
|
|
||||||
// Floating point registers/information
|
|
||||||
uint32_t m_FPCR[32];
|
|
||||||
int32_t m_RoundingModel;
|
|
||||||
MIPS_DWORD m_FPR[32];
|
|
||||||
float * m_FPR_S[32];
|
|
||||||
double * m_FPR_D[32];
|
|
||||||
|
|
||||||
// Memory-mapped N64 registers
|
|
||||||
uint32_t m_RDRAM_Registers[10];
|
|
||||||
uint32_t m_SigProcessor_Interface[10];
|
|
||||||
uint32_t m_Display_ControlReg[10];
|
|
||||||
uint32_t m_Mips_Interface[4];
|
|
||||||
uint32_t m_Video_Interface[14];
|
|
||||||
uint32_t m_Audio_Interface[6];
|
|
||||||
uint32_t m_Peripheral_Interface[13];
|
|
||||||
uint32_t m_RDRAM_Interface[8];
|
|
||||||
uint32_t m_SerialInterface[4];
|
|
||||||
uint32_t m_DiskInterface[22];
|
|
||||||
uint32_t m_AudioIntrReg;
|
|
||||||
uint32_t m_GfxIntrReg;
|
|
||||||
uint32_t m_RspIntrReg;
|
|
||||||
|
|
||||||
void CheckInterrupts();
|
void CheckInterrupts();
|
||||||
void DoAddressError( bool DelaySlot, uint32_t BadVaddr, bool FromRead );
|
void DoAddressError( bool DelaySlot, uint32_t BadVaddr, bool FromRead );
|
||||||
void DoBreakException( bool DelaySlot );
|
void DoBreakException( bool DelaySlot );
|
||||||
|
@ -629,6 +599,36 @@ public:
|
||||||
void Reset();
|
void Reset();
|
||||||
void SetAsCurrentSystem();
|
void SetAsCurrentSystem();
|
||||||
|
|
||||||
|
// General registers
|
||||||
|
uint32_t m_PROGRAM_COUNTER;
|
||||||
|
MIPS_DWORD m_GPR[32];
|
||||||
|
uint32_t m_CP0[33];
|
||||||
|
MIPS_DWORD m_HI;
|
||||||
|
MIPS_DWORD m_LO;
|
||||||
|
uint32_t m_LLBit;
|
||||||
|
|
||||||
|
// Floating point registers/information
|
||||||
|
uint32_t m_FPCR[32];
|
||||||
|
int32_t m_RoundingModel;
|
||||||
|
MIPS_DWORD m_FPR[32];
|
||||||
|
float * m_FPR_S[32];
|
||||||
|
double * m_FPR_D[32];
|
||||||
|
|
||||||
|
// Memory-mapped N64 registers
|
||||||
|
uint32_t m_RDRAM_Registers[10];
|
||||||
|
uint32_t m_SigProcessor_Interface[10];
|
||||||
|
uint32_t m_Display_ControlReg[10];
|
||||||
|
uint32_t m_Mips_Interface[4];
|
||||||
|
uint32_t m_Video_Interface[14];
|
||||||
|
uint32_t m_Audio_Interface[6];
|
||||||
|
uint32_t m_Peripheral_Interface[13];
|
||||||
|
uint32_t m_RDRAM_Interface[8];
|
||||||
|
uint32_t m_SerialInterface[4];
|
||||||
|
uint32_t m_DiskInterface[22];
|
||||||
|
uint32_t m_AudioIntrReg;
|
||||||
|
uint32_t m_GfxIntrReg;
|
||||||
|
uint32_t m_RspIntrReg;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
CRegisters();
|
CRegisters();
|
||||||
CRegisters(const CRegisters&);
|
CRegisters(const CRegisters&);
|
||||||
|
|
Loading…
Reference in New Issue