come cleanup with lle test and misc
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2745 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
63ecc01cc6
commit
29081c204d
|
@ -35,280 +35,280 @@
|
||||||
namespace PowerPC
|
namespace PowerPC
|
||||||
{
|
{
|
||||||
|
|
||||||
// STATE_TO_SAVE
|
// STATE_TO_SAVE
|
||||||
PowerPCState GC_ALIGNED16(ppcState);
|
PowerPCState GC_ALIGNED16(ppcState);
|
||||||
volatile CPUState state = CPU_STEPPING;
|
volatile CPUState state = CPU_STEPPING;
|
||||||
|
|
||||||
static CoreMode mode;
|
static CoreMode mode;
|
||||||
|
|
||||||
void CompactCR()
|
void CompactCR()
|
||||||
|
{
|
||||||
|
ppcState.cr = 0;
|
||||||
|
for (int i = 0; i < 8; i++) {
|
||||||
|
ppcState.cr |= ppcState.cr_fast[i] << (28 - i * 4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ExpandCR()
|
||||||
|
{
|
||||||
|
for (int i = 0; i < 8; i++) {
|
||||||
|
ppcState.cr_fast[i] = (ppcState.cr >> (28 - i * 4)) & 0xF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DoState(PointerWrap &p)
|
||||||
|
{
|
||||||
|
p.Do(ppcState);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ResetRegisters()
|
||||||
|
{
|
||||||
|
for (int i = 0; i < 32; i++)
|
||||||
{
|
{
|
||||||
ppcState.cr = 0;
|
ppcState.gpr[i] = 0;
|
||||||
for (int i = 0; i < 8; i++) {
|
riPS0(i) = 0;
|
||||||
ppcState.cr |= ppcState.cr_fast[i] << (28 - i * 4);
|
riPS1(i) = 0;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ExpandCR()
|
memset(ppcState.spr, 0, sizeof(ppcState.spr));
|
||||||
{
|
|
||||||
for (int i = 0; i < 8; i++) {
|
|
||||||
ppcState.cr_fast[i] = (ppcState.cr >> (28 - i * 4)) & 0xF;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
ppcState.cr = 0;
|
||||||
|
ppcState.fpscr = 0;
|
||||||
|
ppcState.pc = 0;
|
||||||
|
ppcState.npc = 0;
|
||||||
|
ppcState.Exceptions = 0;
|
||||||
|
|
||||||
void DoState(PointerWrap &p)
|
TL = 0;
|
||||||
{
|
TU = 0;
|
||||||
p.Do(ppcState);
|
|
||||||
}
|
|
||||||
|
|
||||||
void ResetRegisters()
|
ppcState.msr = 0;
|
||||||
{
|
rDEC = 0xFFFFFFFF;
|
||||||
for (int i = 0; i < 32; i++)
|
}
|
||||||
{
|
|
||||||
ppcState.gpr[i] = 0;
|
|
||||||
riPS0(i) = 0;
|
|
||||||
riPS1(i) = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
memset(ppcState.spr, 0, sizeof(ppcState.spr));
|
void Init()
|
||||||
|
{
|
||||||
ppcState.cr = 0;
|
enum {
|
||||||
ppcState.fpscr = 0;
|
FPU_PREC_24 = 0 << 8,
|
||||||
ppcState.pc = 0;
|
FPU_PREC_53 = 2 << 8,
|
||||||
ppcState.npc = 0;
|
FPU_PREC_64 = 3 << 8,
|
||||||
ppcState.Exceptions = 0;
|
FPU_PREC_MASK = 3 << 8,
|
||||||
|
};
|
||||||
TL = 0;
|
|
||||||
TU = 0;
|
|
||||||
|
|
||||||
ppcState.msr = 0;
|
|
||||||
rDEC = 0xFFFFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
void Init()
|
|
||||||
{
|
|
||||||
enum {
|
|
||||||
FPU_PREC_24 = 0 << 8,
|
|
||||||
FPU_PREC_53 = 2 << 8,
|
|
||||||
FPU_PREC_64 = 3 << 8,
|
|
||||||
FPU_PREC_MASK = 3 << 8,
|
|
||||||
};
|
|
||||||
#ifdef _M_IX86
|
#ifdef _M_IX86
|
||||||
// sets the floating-point lib to 53-bit
|
// sets the floating-point lib to 53-bit
|
||||||
// PowerPC has a 53bit floating pipeline only
|
// PowerPC has a 53bit floating pipeline only
|
||||||
// eg: sscanf is very sensitive
|
// eg: sscanf is very sensitive
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
_control87(_PC_53, MCW_PC);
|
_control87(_PC_53, MCW_PC);
|
||||||
#else
|
#else
|
||||||
unsigned short _mode;
|
unsigned short _mode;
|
||||||
asm ("fstcw %0" : : "m" (_mode));
|
asm ("fstcw %0" : : "m" (_mode));
|
||||||
_mode = (_mode & ~FPU_PREC_MASK) | FPU_PREC_53;
|
_mode = (_mode & ~FPU_PREC_MASK) | FPU_PREC_53;
|
||||||
asm ("fldcw %0" : : "m" (_mode));
|
asm ("fldcw %0" : : "m" (_mode));
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
//x64 doesn't need this - fpu is done with SSE
|
//x64 doesn't need this - fpu is done with SSE
|
||||||
//but still - set any useful sse options here
|
//but still - set any useful sse options here
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
ResetRegisters();
|
ResetRegisters();
|
||||||
PPCTables::InitTables();
|
PPCTables::InitTables();
|
||||||
|
|
||||||
// Initialize both execution engines ...
|
// Initialize both execution engines ...
|
||||||
Interpreter::Init();
|
Interpreter::Init();
|
||||||
jit.Init();
|
jit.Init();
|
||||||
// ... but start as interpreter by default.
|
// ... but start as interpreter by default.
|
||||||
mode = MODE_INTERPRETER;
|
mode = MODE_INTERPRETER;
|
||||||
state = CPU_STEPPING;
|
state = CPU_STEPPING;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Shutdown()
|
||||||
|
{
|
||||||
|
// Shutdown both execution engines. Doesn't matter which one is active.
|
||||||
|
jit.Shutdown();
|
||||||
|
Interpreter::Shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetMode(CoreMode new_mode)
|
||||||
|
{
|
||||||
|
if (new_mode == mode)
|
||||||
|
return; // We don't need to do anything.
|
||||||
|
|
||||||
|
mode = new_mode;
|
||||||
|
switch (mode)
|
||||||
|
{
|
||||||
|
case MODE_INTERPRETER: // Switching from JIT to interpreter
|
||||||
|
jit.ClearCache(); // Remove all those nasty JIT patches.
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MODE_JIT: // Switching from interpreter to JIT.
|
||||||
|
// Don't really need to do much. It'll work, the cache will refill itself.
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SingleStep()
|
||||||
|
{
|
||||||
|
switch (mode)
|
||||||
|
{
|
||||||
|
case MODE_INTERPRETER:
|
||||||
|
Interpreter::SingleStep();
|
||||||
|
break;
|
||||||
|
case MODE_JIT:
|
||||||
|
jit.SingleStep();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void RunLoop()
|
||||||
|
{
|
||||||
|
state = CPU_RUNNING;
|
||||||
|
switch (mode)
|
||||||
|
{
|
||||||
|
case MODE_INTERPRETER:
|
||||||
|
Interpreter::Run();
|
||||||
|
break;
|
||||||
|
case MODE_JIT:
|
||||||
|
jit.Run();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
Host_UpdateDisasmDialog();
|
||||||
|
}
|
||||||
|
|
||||||
|
CPUState GetState()
|
||||||
|
{
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
|
||||||
|
volatile CPUState *GetStatePtr()
|
||||||
|
{
|
||||||
|
return &state;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Start()
|
||||||
|
{
|
||||||
|
state = CPU_RUNNING;
|
||||||
|
Host_UpdateDisasmDialog();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Pause()
|
||||||
|
{
|
||||||
|
state = CPU_STEPPING;
|
||||||
|
Host_UpdateDisasmDialog();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Stop()
|
||||||
|
{
|
||||||
|
state = CPU_POWERDOWN;
|
||||||
|
Host_UpdateDisasmDialog();
|
||||||
|
}
|
||||||
|
|
||||||
|
void CheckExceptions()
|
||||||
|
{
|
||||||
|
// This check is unnecessary in JIT mode. However, it probably doesn't really hurt.
|
||||||
|
if (!ppcState.Exceptions)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// TODO(ector):
|
||||||
|
// gcemu uses the mask 0x87C0FFFF instead of 0x0780FF77
|
||||||
|
// Investigate!
|
||||||
|
|
||||||
|
if (ppcState.Exceptions & EXCEPTION_FPU_UNAVAILABLE)
|
||||||
|
{
|
||||||
|
//This happens a lot - Gamecube OS uses deferred FPU context switching
|
||||||
|
SRR0 = PC; // re-execute the instruction
|
||||||
|
SRR1 = MSR & 0x0780FF77;
|
||||||
|
NPC = 0x80000800;
|
||||||
|
|
||||||
|
INFO_LOG(GEKKO, "EXCEPTION_FPU_UNAVAILABLE");
|
||||||
|
ppcState.Exceptions &= ~EXCEPTION_FPU_UNAVAILABLE;
|
||||||
|
SRR1 |= 0x02; //recoverable
|
||||||
|
}
|
||||||
|
else if (ppcState.Exceptions & EXCEPTION_SYSCALL)
|
||||||
|
{
|
||||||
|
SRR0 = NPC; // execute next instruction when we come back from handler
|
||||||
|
SRR1 = MSR & 0x0780FF77;
|
||||||
|
NPC = 0x80000C00;
|
||||||
|
|
||||||
|
INFO_LOG(GEKKO, "EXCEPTION_SYSCALL (PC=%08x)", PC);
|
||||||
|
ppcState.Exceptions &= ~EXCEPTION_SYSCALL;
|
||||||
|
SRR1 |= 0x02; //recoverable
|
||||||
|
}
|
||||||
|
else if (ppcState.Exceptions & EXCEPTION_DSI)
|
||||||
|
{
|
||||||
|
SRR0 = PC; // re-execute the instruction
|
||||||
|
SRR1 = MSR & 0x0780FF77;
|
||||||
|
NPC = 0x80000300;
|
||||||
|
|
||||||
|
INFO_LOG(GEKKO, "EXCEPTION_DSI");
|
||||||
|
ppcState.Exceptions &= ~EXCEPTION_DSI;
|
||||||
|
//SRR1 |= 0x02; //make recoverable ?
|
||||||
|
}
|
||||||
|
else if (ppcState.Exceptions & EXCEPTION_ISI)
|
||||||
|
{
|
||||||
|
SRR0 = PC;
|
||||||
|
SRR1 = (MSR & 0x0780FF77) | 0x40000000;
|
||||||
|
NPC = 0x80000400;
|
||||||
|
|
||||||
|
INFO_LOG(GEKKO, "EXCEPTION_ISI");
|
||||||
|
ppcState.Exceptions &= ~EXCEPTION_ISI;
|
||||||
|
//SRR1 |= 0x02; //make recoverable ?
|
||||||
|
}
|
||||||
|
else if (ppcState.Exceptions & EXCEPTION_ALIGNMENT)
|
||||||
|
{
|
||||||
|
//This never happens ATM
|
||||||
|
SRR0 = NPC;
|
||||||
|
SRR1 = MSR & 0x0780FF77;
|
||||||
|
NPC = 0x80000600;
|
||||||
|
|
||||||
|
INFO_LOG(GEKKO, "EXCEPTION_ALIGNMENT");
|
||||||
|
ppcState.Exceptions &= ~EXCEPTION_ALIGNMENT;
|
||||||
|
//SRR1 |= 0x02; //make recoverable ?
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shutdown()
|
// EXTERNAL INTTERUPT
|
||||||
|
else if (MSR & 0x0008000)
|
||||||
{
|
{
|
||||||
// Shutdown both execution engines. Doesn't matter which one is active.
|
if (ppcState.Exceptions & EXCEPTION_EXTERNAL_INT)
|
||||||
jit.Shutdown();
|
|
||||||
Interpreter::Shutdown();
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetMode(CoreMode new_mode)
|
|
||||||
{
|
|
||||||
if (new_mode == mode)
|
|
||||||
return; // We don't need to do anything.
|
|
||||||
|
|
||||||
mode = new_mode;
|
|
||||||
switch (mode)
|
|
||||||
{
|
{
|
||||||
case MODE_INTERPRETER: // Switching from JIT to interpreter
|
// Pokemon gets this "too early", it hasn't a handler yet
|
||||||
jit.ClearCache(); // Remove all those nasty JIT patches.
|
ppcState.Exceptions &= ~EXCEPTION_EXTERNAL_INT; // clear exception
|
||||||
break;
|
|
||||||
|
|
||||||
case MODE_JIT: // Switching from interpreter to JIT.
|
|
||||||
// Don't really need to do much. It'll work, the cache will refill itself.
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void SingleStep()
|
|
||||||
{
|
|
||||||
switch (mode)
|
|
||||||
{
|
|
||||||
case MODE_INTERPRETER:
|
|
||||||
Interpreter::SingleStep();
|
|
||||||
break;
|
|
||||||
case MODE_JIT:
|
|
||||||
jit.SingleStep();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void RunLoop()
|
|
||||||
{
|
|
||||||
state = CPU_RUNNING;
|
|
||||||
switch (mode)
|
|
||||||
{
|
|
||||||
case MODE_INTERPRETER:
|
|
||||||
Interpreter::Run();
|
|
||||||
break;
|
|
||||||
case MODE_JIT:
|
|
||||||
jit.Run();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
Host_UpdateDisasmDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
CPUState GetState()
|
|
||||||
{
|
|
||||||
return state;
|
|
||||||
}
|
|
||||||
|
|
||||||
volatile CPUState *GetStatePtr()
|
|
||||||
{
|
|
||||||
return &state;
|
|
||||||
}
|
|
||||||
|
|
||||||
void Start()
|
|
||||||
{
|
|
||||||
state = CPU_RUNNING;
|
|
||||||
Host_UpdateDisasmDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
void Pause()
|
|
||||||
{
|
|
||||||
state = CPU_STEPPING;
|
|
||||||
Host_UpdateDisasmDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
void Stop()
|
|
||||||
{
|
|
||||||
state = CPU_POWERDOWN;
|
|
||||||
Host_UpdateDisasmDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
void CheckExceptions()
|
|
||||||
{
|
|
||||||
// This check is unnecessary in JIT mode. However, it probably doesn't really hurt.
|
|
||||||
if (!ppcState.Exceptions)
|
|
||||||
return;
|
|
||||||
|
|
||||||
// TODO(ector):
|
|
||||||
// gcemu uses the mask 0x87C0FFFF instead of 0x0780FF77
|
|
||||||
// Investigate!
|
|
||||||
|
|
||||||
if (ppcState.Exceptions & EXCEPTION_FPU_UNAVAILABLE)
|
|
||||||
{
|
|
||||||
//This happens a lot - Gamecube OS uses deferred FPU context switching
|
|
||||||
SRR0 = PC; // re-execute the instruction
|
|
||||||
SRR1 = MSR & 0x0780FF77;
|
|
||||||
NPC = 0x80000800;
|
|
||||||
|
|
||||||
INFO_LOG(GEKKO, "EXCEPTION_FPU_UNAVAILABLE");
|
|
||||||
ppcState.Exceptions &= ~EXCEPTION_FPU_UNAVAILABLE;
|
|
||||||
SRR1 |= 0x02; //recoverable
|
|
||||||
}
|
|
||||||
else if (ppcState.Exceptions & EXCEPTION_SYSCALL)
|
|
||||||
{
|
|
||||||
SRR0 = NPC; // execute next instruction when we come back from handler
|
|
||||||
SRR1 = MSR & 0x0780FF77;
|
|
||||||
NPC = 0x80000C00;
|
|
||||||
|
|
||||||
INFO_LOG(GEKKO, "EXCEPTION_SYSCALL (PC=%08x)", PC);
|
|
||||||
ppcState.Exceptions &= ~EXCEPTION_SYSCALL;
|
|
||||||
SRR1 |= 0x02; //recoverable
|
|
||||||
}
|
|
||||||
else if (ppcState.Exceptions & EXCEPTION_DSI)
|
|
||||||
{
|
|
||||||
SRR0 = PC; // re-execute the instruction
|
|
||||||
SRR1 = MSR & 0x0780FF77;
|
|
||||||
NPC = 0x80000300;
|
|
||||||
|
|
||||||
INFO_LOG(GEKKO, "EXCEPTION_DSI");
|
|
||||||
ppcState.Exceptions &= ~EXCEPTION_DSI;
|
|
||||||
//SRR1 |= 0x02; //make recoverable ?
|
|
||||||
}
|
|
||||||
else if (ppcState.Exceptions & EXCEPTION_ISI)
|
|
||||||
{
|
|
||||||
SRR0 = PC;
|
|
||||||
SRR1 = (MSR & 0x0780FF77) | 0x40000000;
|
|
||||||
NPC = 0x80000400;
|
|
||||||
|
|
||||||
INFO_LOG(GEKKO, "EXCEPTION_ISI");
|
|
||||||
ppcState.Exceptions &= ~EXCEPTION_ISI;
|
|
||||||
//SRR1 |= 0x02; //make recoverable ?
|
|
||||||
}
|
|
||||||
else if (ppcState.Exceptions & EXCEPTION_ALIGNMENT)
|
|
||||||
{
|
|
||||||
//This never happens ATM
|
|
||||||
SRR0 = NPC;
|
SRR0 = NPC;
|
||||||
SRR1 = MSR & 0x0780FF77;
|
NPC = 0x80000500;
|
||||||
NPC = 0x80000600;
|
SRR1 = (MSR & 0x0780FF77);
|
||||||
|
|
||||||
INFO_LOG(GEKKO, "EXCEPTION_ALIGNMENT");
|
INFO_LOG(GEKKO, "EXCEPTION_EXTERNAL_INT");
|
||||||
ppcState.Exceptions &= ~EXCEPTION_ALIGNMENT;
|
|
||||||
//SRR1 |= 0x02; //make recoverable ?
|
SRR1 |= 0x02; //set it to recoverable
|
||||||
|
_dbg_assert_msg_(GEKKO, (SRR1 & 0x02) != 0, "GEKKO", "EXTERNAL_INT unrecoverable???"); // unrecoverable exception !?!
|
||||||
}
|
}
|
||||||
|
else if (ppcState.Exceptions & EXCEPTION_DECREMENTER)
|
||||||
// EXTERNAL INTTERUPT
|
|
||||||
else if (MSR & 0x0008000)
|
|
||||||
{
|
{
|
||||||
if (ppcState.Exceptions & EXCEPTION_EXTERNAL_INT)
|
SRR0 = NPC;
|
||||||
{
|
SRR1 = MSR & 0x0000FF77;
|
||||||
// Pokemon gets this "too early", it hasn't a handler yet
|
NPC = 0x80000900;
|
||||||
ppcState.Exceptions &= ~EXCEPTION_EXTERNAL_INT; // clear exception
|
|
||||||
|
|
||||||
SRR0 = NPC;
|
ppcState.Exceptions &= ~EXCEPTION_DECREMENTER;
|
||||||
NPC = 0x80000500;
|
|
||||||
SRR1 = (MSR & 0x0780FF77);
|
|
||||||
|
|
||||||
INFO_LOG(GEKKO, "EXCEPTION_EXTERNAL_INT");
|
INFO_LOG(GEKKO, "EXCEPTION_DECREMENTER");
|
||||||
|
SRR1 |= 0x02; //make recoverable
|
||||||
SRR1 |= 0x02; //set it to recoverable
|
}
|
||||||
_dbg_assert_msg_(GEKKO, (SRR1 & 0x02) != 0, "GEKKO", "EXTERNAL_INT unrecoverable???"); // unrecoverable exception !?!
|
else
|
||||||
}
|
{
|
||||||
else if (ppcState.Exceptions & EXCEPTION_DECREMENTER)
|
_dbg_assert_msg_(GEKKO, 0, "Unknown EXT interrupt: Exceptions == %08x", ppcState.Exceptions);
|
||||||
{
|
ERROR_LOG(GEKKO, "Unknown EXTERNAL INTERRUPT exception: Exceptions == %08x", ppcState.Exceptions);
|
||||||
SRR0 = NPC;
|
|
||||||
SRR1 = MSR & 0x0000FF77;
|
|
||||||
NPC = 0x80000900;
|
|
||||||
|
|
||||||
ppcState.Exceptions &= ~EXCEPTION_DECREMENTER;
|
|
||||||
|
|
||||||
INFO_LOG(GEKKO, "EXCEPTION_DECREMENTER");
|
|
||||||
SRR1 |= 0x02; //make recoverable
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_dbg_assert_msg_(GEKKO, 0, "Unknown EXT interrupt: Exceptions == %08x", ppcState.Exceptions);
|
|
||||||
ERROR_LOG(GEKKO, "Unknown EXTERNAL INTERRUPT exception: Exceptions == %08x", ppcState.Exceptions);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
MSR &= ~0x0008000; // clear EE-bit so interrupts aren't possible anymore
|
|
||||||
}
|
}
|
||||||
|
MSR &= ~0x0008000; // clear EE-bit so interrupts aren't possible anymore
|
||||||
|
}
|
||||||
|
|
||||||
void OnIdle(u32 _uThreadAddr)
|
void OnIdle(u32 _uThreadAddr)
|
||||||
{
|
{
|
||||||
u32 nextThread = Memory::Read_U32(_uThreadAddr);
|
u32 nextThread = Memory::Read_U32(_uThreadAddr);
|
||||||
//do idle skipping
|
//do idle skipping
|
||||||
if (nextThread == 0)
|
if (nextThread == 0)
|
||||||
CoreTiming::Idle();
|
CoreTiming::Idle();
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace
|
} // namespace
|
|
@ -94,13 +94,14 @@ EVT_MENU(IDM_DELETEGCM, CGameListCtrl::OnDeleteGCM)
|
||||||
END_EVENT_TABLE()
|
END_EVENT_TABLE()
|
||||||
|
|
||||||
CGameListCtrl::CGameListCtrl(wxWindow* parent, const wxWindowID id, const wxPoint& pos, const wxSize& size, long style)
|
CGameListCtrl::CGameListCtrl(wxWindow* parent, const wxWindowID id, const wxPoint& pos, const wxSize& size, long style)
|
||||||
: wxListCtrl(parent, id, pos, size, style) // | wxLC_VIRTUAL)
|
: wxListCtrl(parent, id, pos, size, style)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
CGameListCtrl::~CGameListCtrl()
|
CGameListCtrl::~CGameListCtrl()
|
||||||
{
|
{
|
||||||
if (m_imageListSmall) delete m_imageListSmall;
|
if (m_imageListSmall)
|
||||||
|
delete m_imageListSmall;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGameListCtrl::InitBitmaps()
|
void CGameListCtrl::InitBitmaps()
|
||||||
|
@ -234,6 +235,11 @@ wxString NiceSizeFormat(s64 _size)
|
||||||
|
|
||||||
void CGameListCtrl::InsertItemInReportView(long _Index)
|
void CGameListCtrl::InsertItemInReportView(long _Index)
|
||||||
{
|
{
|
||||||
|
// When using wxListCtrl, there is no hope of per-column text colors.
|
||||||
|
// But for reference, here are the old colors that were used: (BGR)
|
||||||
|
// title: 0xFF0000
|
||||||
|
// company: 0x007030
|
||||||
|
|
||||||
GameListItem& rISOFile = m_ISOFiles[_Index];
|
GameListItem& rISOFile = m_ISOFiles[_Index];
|
||||||
|
|
||||||
int ImageIndex = -1;
|
int ImageIndex = -1;
|
||||||
|
@ -246,34 +252,26 @@ void CGameListCtrl::InsertItemInReportView(long _Index)
|
||||||
// Insert a row with the banner image
|
// Insert a row with the banner image
|
||||||
long ItemIndex = InsertItem(_Index, wxEmptyString, ImageIndex);
|
long ItemIndex = InsertItem(_Index, wxEmptyString, ImageIndex);
|
||||||
|
|
||||||
// Background color
|
|
||||||
SetBackgroundColor();
|
|
||||||
|
|
||||||
// When using wxListCtrl, there is no hope of per-column text colors.
|
|
||||||
// But for reference, here are the old colors that were used: (BGR)
|
|
||||||
// title: 0xFF0000
|
|
||||||
// company: 0x007030
|
|
||||||
|
|
||||||
switch (rISOFile.GetCountry())
|
switch (rISOFile.GetCountry())
|
||||||
{
|
{
|
||||||
case DiscIO::IVolume::COUNTRY_JAP:
|
case DiscIO::IVolume::COUNTRY_JAP:
|
||||||
{
|
{
|
||||||
// keep these codes, when we move to wx unicode...
|
// keep these codes, when we move to wx unicode...
|
||||||
//wxCSConv convFrom(wxFontMapper::GetEncodingName(wxFONTENCODING_SHIFT_JIS));
|
//wxCSConv convFrom(wxFontMapper::GetEncodingName(wxFONTENCODING_SHIFT_JIS));
|
||||||
//wxCSConv convTo(wxFontMapper::GetEncodingName(wxFONTENCODING_DEFAULT));
|
//wxCSConv convTo(wxFontMapper::GetEncodingName(wxFONTENCODING_DEFAULT));
|
||||||
//SetItem(_Index, COLUMN_TITLE, wxString(wxString(rISOFile.GetName()).wc_str(convFrom) , convTo), -1);
|
//SetItem(_Index, COLUMN_TITLE, wxString(wxString(rISOFile.GetName()).wc_str(convFrom) , convTo), -1);
|
||||||
//SetItem(_Index, COLUMN_NOTES, wxString(wxString(rISOFile.GetDescription()).wc_str(convFrom) , convTo), -1);
|
//SetItem(_Index, COLUMN_NOTES, wxString(wxString(rISOFile.GetDescription()).wc_str(convFrom) , convTo), -1);
|
||||||
wxString name;
|
wxString name;
|
||||||
if (CopySJISToString(name, rISOFile.GetName(0).c_str()))
|
if (CopySJISToString(name, rISOFile.GetName(0).c_str()))
|
||||||
{
|
{
|
||||||
SetItem(_Index, COLUMN_TITLE, name, -1);
|
SetItem(_Index, COLUMN_TITLE, name, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString description;
|
wxString description;
|
||||||
if (CopySJISToString(description, rISOFile.GetDescription(0).c_str()))
|
if (CopySJISToString(description, rISOFile.GetDescription(0).c_str()))
|
||||||
{
|
{
|
||||||
SetItem(_Index, COLUMN_NOTES, description, -1);
|
SetItem(_Index, COLUMN_NOTES, description, -1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case DiscIO::IVolume::COUNTRY_USA:
|
case DiscIO::IVolume::COUNTRY_USA:
|
||||||
|
@ -344,19 +342,10 @@ void CGameListCtrl::InsertItemInReportView(long _Index)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Country
|
// Country
|
||||||
{
|
SetItemColumnImage(_Index, COLUMN_COUNTRY, m_FlagImageIndex[rISOFile.GetCountry()]);
|
||||||
wxListItem item;
|
|
||||||
item.m_itemId = ItemIndex;
|
|
||||||
item.SetColumn(COLUMN_COUNTRY);
|
|
||||||
DiscIO::IVolume::ECountry Country = rISOFile.GetCountry();
|
|
||||||
|
|
||||||
if (size_t(Country) < m_FlagImageIndex.size())
|
// Background color
|
||||||
{
|
SetBackgroundColor();
|
||||||
item.SetImage(m_FlagImageIndex[rISOFile.GetCountry()]);
|
|
||||||
}
|
|
||||||
|
|
||||||
SetItem(item);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Item data
|
// Item data
|
||||||
SetItemData(_Index, ItemIndex);
|
SetItemData(_Index, ItemIndex);
|
||||||
|
|
|
@ -152,6 +152,12 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wxCore28", "..\Externals\wx
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AudioCommon", "Core\AudioCommon\AudioCommon.vcproj", "{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AudioCommon", "Core\AudioCommon\AudioCommon.vcproj", "{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Plugin_DSP_LLE_Test", "Plugins\Plugin_DSP_LLE-testing\Plugin_DSP_LLE_Test.vcproj", "{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6} = {FBAFB369-07EB-4460-9CAD-08BE5789DAB6}
|
||||||
|
{C573CAF7-EE6A-458E-8049-16C0BF34C2E9} = {C573CAF7-EE6A-458E-8049-16C0BF34C2E9}
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Win32 = Debug|Win32
|
Debug|Win32 = Debug|Win32
|
||||||
|
@ -504,17 +510,27 @@ Global
|
||||||
{11F55366-12EC-4C44-A8CB-1D4E315D61ED}.Release|x64.Build.0 = Release|x64
|
{11F55366-12EC-4C44-A8CB-1D4E315D61ED}.Release|x64.Build.0 = Release|x64
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Debug|Win32.ActiveCfg = Debug|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Debug|Win32.Build.0 = Debug|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Debug|x64.ActiveCfg = Debug|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Debug|x64.Build.0 = Debug|x64
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.DebugFast|Win32.ActiveCfg = Debug|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.DebugFast|Win32.ActiveCfg = Debug|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.DebugFast|Win32.Build.0 = Debug|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.DebugFast|Win32.Build.0 = Debug|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.DebugFast|x64.ActiveCfg = Debug|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.DebugFast|x64.ActiveCfg = Debug|x64
|
||||||
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.DebugFast|x64.Build.0 = Debug|x64
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release_JITIL|Win32.ActiveCfg = Release|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release_JITIL|Win32.ActiveCfg = Release|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release_JITIL|Win32.Build.0 = Release|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release_JITIL|Win32.Build.0 = Release|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release_JITIL|x64.ActiveCfg = Release|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release_JITIL|x64.ActiveCfg = Release|x64
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|Win32.ActiveCfg = Release|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|Win32.Build.0 = Release|Win32
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|Win32.Build.0 = Release|Win32
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|x64.ActiveCfg = Release|x64
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|x64.ActiveCfg = Release|x64
|
||||||
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|x64.Build.0 = Release|x64
|
{FBAFB369-07EB-4460-9CAD-08BE5789DAB6}.Release|x64.Build.0 = Release|x64
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.DebugFast|Win32.ActiveCfg = DebugFast|Win32
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.DebugFast|x64.ActiveCfg = DebugFast|x64
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.Release_JITIL|Win32.ActiveCfg = Release|Win32
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.Release_JITIL|x64.ActiveCfg = Release|x64
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}.Release|x64.ActiveCfg = Release|x64
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|
|
@ -78,7 +78,7 @@
|
||||||
SubSystem="2"
|
SubSystem="2"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="0"
|
DataExecutionPrevention="0"
|
||||||
ImportLibrary="$(OutDir)/DSP_HLE.lib"
|
ImportLibrary="$(TargetDir)$(TargetName).lib"
|
||||||
TargetMachine="1"
|
TargetMachine="1"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
|
@ -163,7 +163,7 @@
|
||||||
SubSystem="2"
|
SubSystem="2"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="0"
|
DataExecutionPrevention="0"
|
||||||
ImportLibrary="$(OutDir)/DSP_HLE.lib"
|
ImportLibrary="$(TargetDir)$(TargetName).lib"
|
||||||
TargetMachine="17"
|
TargetMachine="17"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
|
@ -252,7 +252,7 @@
|
||||||
EnableCOMDATFolding="2"
|
EnableCOMDATFolding="2"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="0"
|
DataExecutionPrevention="0"
|
||||||
ImportLibrary="$(OutDir)/DSP_HLE.lib"
|
ImportLibrary="$(TargetDir)$(TargetName).lib"
|
||||||
TargetMachine="1"
|
TargetMachine="1"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
|
@ -341,7 +341,7 @@
|
||||||
EnableCOMDATFolding="2"
|
EnableCOMDATFolding="2"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="0"
|
DataExecutionPrevention="0"
|
||||||
ImportLibrary="$(OutDir)/DSP_HLE.lib"
|
ImportLibrary="$(TargetDir)$(TargetName).lib"
|
||||||
TargetMachine="17"
|
TargetMachine="17"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
|
@ -430,7 +430,7 @@
|
||||||
EnableCOMDATFolding="2"
|
EnableCOMDATFolding="2"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="0"
|
DataExecutionPrevention="0"
|
||||||
ImportLibrary="$(OutDir)/DSP_HLE.lib"
|
ImportLibrary="$(TargetDir)$(TargetName).lib"
|
||||||
TargetMachine="1"
|
TargetMachine="1"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
|
@ -519,7 +519,7 @@
|
||||||
EnableCOMDATFolding="2"
|
EnableCOMDATFolding="2"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="0"
|
DataExecutionPrevention="0"
|
||||||
ImportLibrary="$(OutDir)/DSP_HLE.lib"
|
ImportLibrary="$(TargetDir)$(TargetName).lib"
|
||||||
TargetMachine="17"
|
TargetMachine="17"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
<VisualStudioProject
|
<VisualStudioProject
|
||||||
ProjectType="Visual C++"
|
ProjectType="Visual C++"
|
||||||
Version="9.00"
|
Version="9.00"
|
||||||
Name="Plugin_DSP_LLE-testing"
|
Name="Plugin_DSP_LLE_Test"
|
||||||
ProjectGUID="{C60D0E7A-ED05-4C67-9EE7-3A6C0D7801C8}"
|
ProjectGUID="{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}"
|
||||||
RootNamespace="Plugin_DSP_LLE"
|
RootNamespace="Plugin_DSP_LLE"
|
||||||
Keyword="Win32Proj"
|
Keyword="Win32Proj"
|
||||||
TargetFrameworkVersion="131072"
|
TargetFrameworkVersion="131072"
|
||||||
|
@ -45,7 +45,7 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs"
|
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs;../../Core/AudioCommon/Src"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
|
@ -69,8 +69,9 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
||||||
OutputFile="../../../Binary/Win32/Plugins/Plugin_DSP_LLED.dll"
|
OutputFile="../../../Binary/Win32/Plugins/$(ProjectName)D.dll"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
|
AdditionalLibraryDirectories="..\..\AudioCommon\$(PlatformName)\$(ConfigurationName)"
|
||||||
GenerateManifest="false"
|
GenerateManifest="false"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
||||||
|
@ -130,7 +131,7 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs"
|
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs;../../Core/AudioCommon/Src"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
||||||
MinimalRebuild="false"
|
MinimalRebuild="false"
|
||||||
BasicRuntimeChecks="0"
|
BasicRuntimeChecks="0"
|
||||||
|
@ -154,8 +155,9 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
||||||
OutputFile="../../../Binary/x64/Plugins/Plugin_DSP_LLED.dll"
|
OutputFile="../../../Binary/x64/Plugins/$(ProjectName)D.dll"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
|
AdditionalLibraryDirectories="..\..\AudioCommon\$(PlatformName)\$(ConfigurationName)"
|
||||||
GenerateManifest="false"
|
GenerateManifest="false"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
AssemblyDebug="1"
|
AssemblyDebug="1"
|
||||||
|
@ -218,7 +220,7 @@
|
||||||
EnableIntrinsicFunctions="true"
|
EnableIntrinsicFunctions="true"
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
OmitFramePointers="true"
|
OmitFramePointers="true"
|
||||||
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs"
|
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs;../../Core/AudioCommon/Src"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableEnhancedInstructionSet="2"
|
EnableEnhancedInstructionSet="2"
|
||||||
|
@ -241,8 +243,9 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
||||||
OutputFile="../../../Binary/Win32/Plugins/Plugin_DSP_LLE.dll"
|
OutputFile="../../../Binary/Win32/Plugins/$(ProjectName).dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
|
AdditionalLibraryDirectories="..\..\AudioCommon\$(PlatformName)\$(ConfigurationName)"
|
||||||
GenerateManifest="false"
|
GenerateManifest="false"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
||||||
|
@ -308,7 +311,7 @@
|
||||||
EnableIntrinsicFunctions="true"
|
EnableIntrinsicFunctions="true"
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
OmitFramePointers="true"
|
OmitFramePointers="true"
|
||||||
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs"
|
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs;../../Core/AudioCommon/Src"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;_SECURE_SCL=0"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
UsePrecompiledHeader="2"
|
UsePrecompiledHeader="2"
|
||||||
|
@ -330,8 +333,9 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
||||||
OutputFile="../../../Binary/x64/Plugins/Plugin_DSP_LLE.dll"
|
OutputFile="../../../Binary/x64/Plugins/$(ProjectName).dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
|
AdditionalLibraryDirectories="..\..\AudioCommon\$(PlatformName)\$(ConfigurationName)"
|
||||||
GenerateManifest="false"
|
GenerateManifest="false"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
||||||
|
@ -395,7 +399,7 @@
|
||||||
EnableIntrinsicFunctions="true"
|
EnableIntrinsicFunctions="true"
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
OmitFramePointers="true"
|
OmitFramePointers="true"
|
||||||
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs"
|
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs;../../Core/AudioCommon/Src"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;DEBUGFAST;_SECURE_SCL=0"
|
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;DEBUGFAST;_SECURE_SCL=0"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableEnhancedInstructionSet="2"
|
EnableEnhancedInstructionSet="2"
|
||||||
|
@ -418,8 +422,9 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
||||||
OutputFile="../../../Binary/Win32/Plugins/Plugin_DSP_LLEDF.dll"
|
OutputFile="../../../Binary/Win32/Plugins/$(ProjectName)DF.dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
|
AdditionalLibraryDirectories="..\..\AudioCommon\$(PlatformName)\$(ConfigurationName)"
|
||||||
GenerateManifest="false"
|
GenerateManifest="false"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
||||||
|
@ -485,7 +490,7 @@
|
||||||
EnableIntrinsicFunctions="true"
|
EnableIntrinsicFunctions="true"
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
OmitFramePointers="true"
|
OmitFramePointers="true"
|
||||||
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs"
|
AdditionalIncludeDirectories="../../Core/Common/Src;../../../Externals/WTL80;../../PluginSpecs;../../Core/AudioCommon/Src"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;DEBUGFAST;_SECURE_SCL=0"
|
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DSP_HLE_EXPORTS;DEBUGFAST;_SECURE_SCL=0"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
UsePrecompiledHeader="2"
|
UsePrecompiledHeader="2"
|
||||||
|
@ -507,8 +512,9 @@
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
AdditionalDependencies="dxguid.lib dsound.lib winmm.lib"
|
||||||
OutputFile="../../../Binary/x64/Plugins/Plugin_DSP_LLEDF.dll"
|
OutputFile="../../../Binary/x64/Plugins/$(ProjectName)DF.dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
|
AdditionalLibraryDirectories="..\..\AudioCommon\$(PlatformName)\$(ConfigurationName)"
|
||||||
GenerateManifest="false"
|
GenerateManifest="false"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
|
||||||
|
@ -727,18 +733,6 @@
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter
|
|
||||||
Name="PCHW"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath=".\Src\Mixer.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath=".\Src\Mixer.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
<Filter
|
||||||
Name="HLE"
|
Name="HLE"
|
||||||
>
|
>
|
||||||
|
@ -771,6 +765,18 @@
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="PCHW"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Src\Mixer.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\Src\Mixer.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\Src\Globals.cpp"
|
RelativePath=".\Src\Globals.cpp"
|
||||||
>
|
>
|
Loading…
Reference in New Issue