DSPSpy: Hide loop stack registers - they aren't relevant for most investigations.

Highlight differences on both sides.
Show the accelerator subregs in order.
Make it possible to include some code from Dolphin into DSPSpy, good for grabbing useful #defines. (had to change the GEKKO log to POWERPC).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3120 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
hrydgard
2009-05-01 15:17:03 +00:00
parent 397af9ade4
commit b0bb4e6335
19 changed files with 103 additions and 88 deletions

View File

@ -30,7 +30,9 @@
char* strndup (char const *s, size_t n);
size_t strnlen(const char *s, size_t n);
#else
#ifdef __linux__
#include <byteswap.h>
#endif
#endif // APPLE
#include <errno.h>
// go to debugger mode

View File

@ -39,6 +39,8 @@ typedef signed __int64 s64;
#else
#ifndef GEKKO
typedef unsigned char u8;
typedef unsigned short u16;
typedef unsigned int u32;
@ -49,6 +51,7 @@ typedef short s16;
typedef int s32;
typedef long long s64;
#endif
// For using windows lock code
#define TCHAR char
#define LONG int

View File

@ -42,7 +42,7 @@ enum LOG_TYPE {
DVDINTERFACE,
DYNA_REC,
EXPANSIONINTERFACE,
GEKKO,
POWERPC,
GPFIFO,
HLE,
MASTER_LOG,

View File

@ -40,7 +40,7 @@ LogManager::LogManager()\
m_Log[LogTypes::GPFIFO] = new LogContainer("GP", "GPFifo");
m_Log[LogTypes::EXPANSIONINTERFACE] = new LogContainer("EXI", "ExpansionInt");
m_Log[LogTypes::AUDIO_INTERFACE] = new LogContainer("AI", "AudioInt");
m_Log[LogTypes::GEKKO] = new LogContainer("GEKKO", "IBM CPU");
m_Log[LogTypes::POWERPC] = new LogContainer("PowerPC", "IBM CPU");
m_Log[LogTypes::HLE] = new LogContainer("HLE", "HLE");
m_Log[LogTypes::DSPHLE] = new LogContainer("DSPHLE", "DSP HLE");
m_Log[LogTypes::DSPLLE] = new LogContainer("DSPLLE", "DSP LLE");

View File

@ -26,6 +26,8 @@
#include <unistd.h>
#ifdef _POSIX_THREADS
#include <pthread.h>
#elif GEKKO
#include <ogc/lwp_threads.h>
#else
#error unsupported platform (no pthreads?)
#endif
@ -59,8 +61,10 @@ class CriticalSection
#ifdef _WIN32
CRITICAL_SECTION section;
#else
#ifdef _POSIX_THREADS
pthread_mutex_t mutex;
#endif
#endif
public:
CriticalSection(int spincount = 1000);
@ -96,8 +100,10 @@ private:
HANDLE m_hThread;
DWORD m_threadId;
#else
#ifdef _POSIX_THREADS
pthread_t thread_id;
#endif
#endif
};
@ -140,9 +146,11 @@ private:
static const int THREAD_WAIT_TIMEOUT = 5000; // INFINITE or 5000 for example
#else
bool is_set_;
#ifdef _POSIX_THREADS
pthread_cond_t event_;
pthread_mutex_t mutex_;
#endif
#endif
};
void InitThreading();