Code cleanup
Move enums for max SI and EXI devices to their respective .h file, and rename them. Use only those enums in BootManager.cpp. Same thing in Movie.cpp Change one instance of MAX_BBMOTES to MAX_WIIMOTES in Movie.cpp, since movies do not support balance board.
This commit is contained in:
parent
3046d0e701
commit
48470a20ca
|
@ -37,6 +37,8 @@
|
|||
#include "Movie.h"
|
||||
#include "NetPlayProto.h"
|
||||
#include "HW/WiimoteReal/WiimoteReal.h"
|
||||
#include "HW/SI.h"
|
||||
#include "HW/EXI.h"
|
||||
|
||||
namespace BootManager
|
||||
{
|
||||
|
@ -48,12 +50,12 @@ struct ConfigCache
|
|||
bool valid, bCPUThread, bSkipIdle, bEnableFPRF, bMMU, bDCBZOFF, m_EnableJIT, bDSPThread,
|
||||
bVBeamSpeedHack, bSyncGPU, bFastDiscSpeed, bMergeBlocks, bDSPHLE, bHLE_BS2, bTLBHack, bUseFPS;
|
||||
int iCPUCore, Volume;
|
||||
int iWiimoteSource[5];
|
||||
SIDevices Pads[4];
|
||||
int iWiimoteSource[MAX_BBMOTES];
|
||||
SIDevices Pads[MAX_SI_CHANNELS];
|
||||
unsigned int framelimit;
|
||||
TEXIDevices m_EXIDevice[2];
|
||||
TEXIDevices m_EXIDevice[MAX_EXI_CHANNELS];
|
||||
std::string strBackend, sBackend;
|
||||
bool bSetFramelimit, bSetEXIDevice[2], bSetUseFPS, bSetVolume, bSetPads[4], bSetWiimoteSource[5];
|
||||
bool bSetFramelimit, bSetEXIDevice[MAX_EXI_CHANNELS], bSetUseFPS, bSetVolume, bSetPads[MAX_SI_CHANNELS], bSetWiimoteSource[MAX_BBMOTES];
|
||||
};
|
||||
static ConfigCache config_cache;
|
||||
|
||||
|
@ -109,8 +111,6 @@ bool BootCore(const std::string& _rFilename)
|
|||
config_cache.bHLE_BS2 = StartUp.bHLE_BS2;
|
||||
config_cache.m_EnableJIT = SConfig::GetInstance().m_EnableJIT;
|
||||
config_cache.bDSPThread = StartUp.bDSPThread;
|
||||
config_cache.m_EXIDevice[0] = SConfig::GetInstance().m_EXIDevice[0];
|
||||
config_cache.m_EXIDevice[1] = SConfig::GetInstance().m_EXIDevice[1];
|
||||
config_cache.Volume = SConfig::GetInstance().m_Volume;
|
||||
config_cache.sBackend = SConfig::GetInstance().sBackend;
|
||||
config_cache.framelimit = SConfig::GetInstance().m_Framelimit;
|
||||
|
@ -119,14 +119,17 @@ bool BootCore(const std::string& _rFilename)
|
|||
{
|
||||
config_cache.iWiimoteSource[i] = g_wiimote_sources[i];
|
||||
}
|
||||
for (unsigned int i = 0; i < 4; ++i)
|
||||
for (unsigned int i = 0; i < MAX_SI_CHANNELS; ++i)
|
||||
{
|
||||
config_cache.Pads[i] = SConfig::GetInstance().m_SIDevice[i];
|
||||
}
|
||||
std::fill_n(config_cache.bSetWiimoteSource, 5, false);
|
||||
std::fill_n(config_cache.bSetPads, 4, false);
|
||||
config_cache.bSetEXIDevice[0] = false;
|
||||
config_cache.bSetEXIDevice[1] = false;
|
||||
for (unsigned int i = 0; i < MAX_EXI_CHANNELS; ++i)
|
||||
{
|
||||
config_cache.m_EXIDevice[i] = SConfig::GetInstance().m_EXIDevice[i];
|
||||
}
|
||||
std::fill_n(config_cache.bSetWiimoteSource, (int)MAX_BBMOTES, false);
|
||||
std::fill_n(config_cache.bSetPads, (int)MAX_SI_CHANNELS, false);
|
||||
std::fill_n(config_cache.bSetEXIDevice, (int)MAX_EXI_CHANNELS, false);
|
||||
config_cache.bSetFramelimit = false;
|
||||
|
||||
// General settings
|
||||
|
@ -155,7 +158,7 @@ bool BootCore(const std::string& _rFilename)
|
|||
game_ini.Get("DSP", "Backend", &SConfig::GetInstance().sBackend, SConfig::GetInstance().sBackend.c_str());
|
||||
VideoBackend::ActivateBackend(StartUp.m_strVideoBackend);
|
||||
|
||||
for (unsigned int i = 0; i < 4; ++i)
|
||||
for (unsigned int i = 0; i < MAX_SI_CHANNELS; ++i)
|
||||
{
|
||||
int source;
|
||||
game_ini.Get("Controls", StringFromFormat("PadType%u", i).c_str(), &source, -1);
|
||||
|
@ -188,7 +191,7 @@ bool BootCore(const std::string& _rFilename)
|
|||
{
|
||||
config_cache.bSetWiimoteSource[WIIMOTE_BALANCE_BOARD] = true;
|
||||
g_wiimote_sources[WIIMOTE_BALANCE_BOARD] = source;
|
||||
WiimoteReal::ChangeWiimoteSource(4, source);
|
||||
WiimoteReal::ChangeWiimoteSource(WIIMOTE_BALANCE_BOARD, source);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -268,14 +271,10 @@ void Stop()
|
|||
SConfig::GetInstance().m_Framelimit = config_cache.framelimit;
|
||||
if (config_cache.bSetUseFPS)
|
||||
SConfig::GetInstance().b_UseFPS = config_cache.bUseFPS;
|
||||
if (config_cache.bSetEXIDevice[0])
|
||||
SConfig::GetInstance().m_EXIDevice[0] = config_cache.m_EXIDevice[0];
|
||||
if (config_cache.bSetEXIDevice[1])
|
||||
SConfig::GetInstance().m_EXIDevice[1] = config_cache.m_EXIDevice[1];
|
||||
if (config_cache.bSetVolume)
|
||||
SConfig::GetInstance().m_Volume = config_cache.Volume;
|
||||
|
||||
for (unsigned int i = 0; i < 4; ++i)
|
||||
for (unsigned int i = 0; i < MAX_SI_CHANNELS; ++i)
|
||||
{
|
||||
if (config_cache.bSetPads[i])
|
||||
{
|
||||
|
@ -283,6 +282,13 @@ void Stop()
|
|||
}
|
||||
|
||||
}
|
||||
for (unsigned int i = 0; i < MAX_EXI_CHANNELS; ++i)
|
||||
{
|
||||
if (config_cache.bSetEXIDevice[i])
|
||||
{
|
||||
SConfig::GetInstance().m_EXIDevice[i] = config_cache.m_EXIDevice[i];
|
||||
}
|
||||
}
|
||||
if (StartUp.bWii)
|
||||
{
|
||||
for (unsigned int i = 0; i < MAX_BBMOTES; ++i)
|
||||
|
|
|
@ -20,16 +20,11 @@ namespace ExpansionInterface
|
|||
|
||||
static int changeDevice;
|
||||
|
||||
enum
|
||||
{
|
||||
NUM_CHANNELS = 3
|
||||
};
|
||||
|
||||
CEXIChannel *g_Channels[NUM_CHANNELS];
|
||||
CEXIChannel *g_Channels[MAX_EXI_CHANNELS];
|
||||
void Init()
|
||||
{
|
||||
initSRAM();
|
||||
for (u32 i = 0; i < NUM_CHANNELS; i++)
|
||||
for (u32 i = 0; i < MAX_EXI_CHANNELS; i++)
|
||||
g_Channels[i] = new CEXIChannel(i);
|
||||
|
||||
if (Movie::IsPlayingInput() && Movie::IsUsingMemcard() && Movie::IsConfigSaved())
|
||||
|
@ -111,9 +106,9 @@ void Read32(u32& _uReturnValue, const u32 _iAddress)
|
|||
u32 iRegister = (iAddr >> 2) % 5;
|
||||
u32 iChannel = (iAddr >> 2) / 5;
|
||||
|
||||
_dbg_assert_(EXPANSIONINTERFACE, iChannel < NUM_CHANNELS);
|
||||
_dbg_assert_(EXPANSIONINTERFACE, iChannel < MAX_EXI_CHANNELS);
|
||||
|
||||
if (iChannel < NUM_CHANNELS)
|
||||
if (iChannel < MAX_EXI_CHANNELS)
|
||||
{
|
||||
g_Channels[iChannel]->Read32(_uReturnValue, iRegister);
|
||||
}
|
||||
|
@ -130,9 +125,9 @@ void Write32(const u32 _iValue, const u32 _iAddress)
|
|||
u32 iRegister = (iAddr >> 2) % 5;
|
||||
u32 iChannel = (iAddr >> 2) / 5;
|
||||
|
||||
_dbg_assert_(EXPANSIONINTERFACE, iChannel < NUM_CHANNELS);
|
||||
_dbg_assert_(EXPANSIONINTERFACE, iChannel < MAX_EXI_CHANNELS);
|
||||
|
||||
if (iChannel < NUM_CHANNELS)
|
||||
if (iChannel < MAX_EXI_CHANNELS)
|
||||
g_Channels[iChannel]->Write32(_iValue, iRegister);
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,11 @@
|
|||
#include "Thread.h"
|
||||
class PointerWrap;
|
||||
|
||||
enum
|
||||
{
|
||||
MAX_EXI_CHANNELS = 3
|
||||
};
|
||||
|
||||
namespace ExpansionInterface
|
||||
{
|
||||
|
||||
|
|
|
@ -32,12 +32,6 @@ enum SIInterruptType
|
|||
};
|
||||
static void GenerateSIInterrupt(SIInterruptType _SIInterrupt);
|
||||
|
||||
// SI number of channels
|
||||
enum
|
||||
{
|
||||
NUMBER_OF_CHANNELS = 0x04
|
||||
};
|
||||
|
||||
// SI Internal Hardware Addresses
|
||||
enum
|
||||
{
|
||||
|
@ -208,7 +202,7 @@ union USIEXIClockCount
|
|||
};
|
||||
|
||||
// STATE_TO_SAVE
|
||||
static SSIChannel g_Channel[NUMBER_OF_CHANNELS];
|
||||
static SSIChannel g_Channel[MAX_SI_CHANNELS];
|
||||
static USIPoll g_Poll;
|
||||
static USIComCSR g_ComCSR;
|
||||
static USIStatusReg g_StatusReg;
|
||||
|
@ -217,7 +211,7 @@ static u8 g_SIBuffer[128];
|
|||
|
||||
void DoState(PointerWrap &p)
|
||||
{
|
||||
for(int i = 0; i < NUMBER_OF_CHANNELS; i++)
|
||||
for(int i = 0; i < MAX_SI_CHANNELS; i++)
|
||||
{
|
||||
p.Do(g_Channel[i].m_InHi.Hex);
|
||||
p.Do(g_Channel[i].m_InLo.Hex);
|
||||
|
@ -254,7 +248,7 @@ void DoState(PointerWrap &p)
|
|||
|
||||
void Init()
|
||||
{
|
||||
for (int i = 0; i < NUMBER_OF_CHANNELS; i++)
|
||||
for (int i = 0; i < MAX_SI_CHANNELS; i++)
|
||||
{
|
||||
g_Channel[i].m_Out.Hex = 0;
|
||||
g_Channel[i].m_InHi.Hex = 0;
|
||||
|
@ -282,7 +276,7 @@ void Init()
|
|||
|
||||
void Shutdown()
|
||||
{
|
||||
for (int i = 0; i < NUMBER_OF_CHANNELS; i++)
|
||||
for (int i = 0; i < MAX_SI_CHANNELS; i++)
|
||||
RemoveDevice(i);
|
||||
GBAConnectionWaiter_Shutdown();
|
||||
}
|
||||
|
@ -554,7 +548,7 @@ void AddDevice(ISIDevice* pDevice)
|
|||
{
|
||||
int _iDeviceNumber = pDevice->GetDeviceNumber();
|
||||
|
||||
//_dbg_assert_(SERIALINTERFACE, _iDeviceNumber < NUMBER_OF_CHANNELS);
|
||||
//_dbg_assert_(SERIALINTERFACE, _iDeviceNumber < MAX_SI_CHANNELS);
|
||||
|
||||
// delete the old device
|
||||
RemoveDevice(_iDeviceNumber);
|
||||
|
|
|
@ -10,6 +10,12 @@
|
|||
class PointerWrap;
|
||||
class ISIDevice;
|
||||
|
||||
// SI number of channels
|
||||
enum
|
||||
{
|
||||
MAX_SI_CHANNELS = 0x04
|
||||
};
|
||||
|
||||
namespace SerialInterface
|
||||
{
|
||||
|
||||
|
|
|
@ -372,14 +372,14 @@ void ChangePads(bool instantly)
|
|||
|
||||
int controllers = 0;
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
for (int i = 0; i < MAX_SI_CHANNELS; i++)
|
||||
if (SConfig::GetInstance().m_SIDevice[i] == SIDEVICE_GC_CONTROLLER || SConfig::GetInstance().m_SIDevice[i] == SIDEVICE_GC_TARUKONGA)
|
||||
controllers |= (1 << i);
|
||||
|
||||
if (instantly && (g_numPads & 0x0F) == controllers)
|
||||
return;
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
for (int i = 0; i < MAX_SI_CHANNELS; i++)
|
||||
if (instantly) // Changes from savestates need to be instantaneous
|
||||
SerialInterface::AddDevice(IsUsingPad(i) ? (IsUsingBongo(i) ? SIDEVICE_GC_TARUKONGA : SIDEVICE_GC_CONTROLLER) : SIDEVICE_NONE, i);
|
||||
else
|
||||
|
@ -390,7 +390,7 @@ void ChangeWiiPads(bool instantly)
|
|||
{
|
||||
int controllers = 0;
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
for (int i = 0; i < MAX_WIIMOTES; i++)
|
||||
if (g_wiimote_sources[i] != WIIMOTE_SRC_NONE)
|
||||
controllers |= (1 << i);
|
||||
|
||||
|
@ -398,7 +398,7 @@ void ChangeWiiPads(bool instantly)
|
|||
if (instantly && (g_numPads >> 4) == controllers)
|
||||
return;
|
||||
|
||||
for (int i = 0; i < MAX_BBMOTES; i++)
|
||||
for (int i = 0; i < MAX_WIIMOTES; i++)
|
||||
{
|
||||
g_wiimote_sources[i] = IsUsingWiimote(i) ? WIIMOTE_SRC_EMU : WIIMOTE_SRC_NONE;
|
||||
GetUsbPointer()->AccessWiiMote(i | 0x100)->Activate(IsUsingWiimote(i));
|
||||
|
@ -424,7 +424,7 @@ bool BeginRecordingInput(int controllers)
|
|||
|
||||
g_rerecords = 0;
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
for (int i = 0; i < MAX_SI_CHANNELS; i++)
|
||||
if (SConfig::GetInstance().m_SIDevice[i] == SIDEVICE_GC_TARUKONGA)
|
||||
bongos |= (1 << i);
|
||||
|
||||
|
|
Loading…
Reference in New Issue