Files
dolphin/Source/Core/Core/Src/GeckoCode.h
T
skidau 69b2d4ddc1 Changed the Gecko code handling to the native code handler. This provides full compatibility with all Gecko codes.
To use the native code handler, place the kenobiwii.bin file into the Sys directory.  Dolphin will silently fall-back to the emulated code handler if the file is not there.

Fixes issue 4561.
2012-01-03 01:24:14 -05:00

76 lines
999 B
C++

#ifndef __GECKOCODE_h__
#define __GECKOCODE_h__
#include "Common.h"
#include <vector>
#include <string>
#include <map>
namespace Gecko
{
class GeckoCode
{
public:
GeckoCode() : enabled(false) {}
struct Code
{
Code() : address(0), data(0) {}
union
{
u32 address;
struct
{
u32 gcaddress : 25;
u32 subtype: 3;
u32 use_po : 1;
u32 type: 3;
};
struct
{
u32 n : 4;
u32 z : 12;
u32 y : 4;
u32 t : 4;
//u32 s : 4;
//u32 : 4;
};// subsubtype;
};
union
{
u32 data;
//struct
//{
//
//};
};
std::string original_line;
u32 GetAddress() const;
};
std::vector<Code> codes;
std::string name, creator;
std::vector<std::string> notes;
bool enabled;
};
void SetActiveCodes(const std::vector<GeckoCode>& gcodes);
bool RunActiveCodes();
void RunCodeHandler();
const std::map<u32, std::vector<u32> >& GetInsertedAsmCodes();
} // namespace Gecko
#endif