| 1 |
– |
#pragma once |
| 1 |
|
#ifndef DAODAN_PATCH_H |
| 2 |
|
#define DAODAN_PATCH_H |
| 3 |
|
|
| 4 |
< |
#include <stdbool.h> |
| 4 |
> |
#include "stdint.h" |
| 5 |
|
|
| 6 |
|
#define DDrPatch_Const(d, c) DDrPatch_String(d, c, sizeof(c)) |
| 7 |
|
|
| 8 |
+ |
#define OniExe ((char*)0x00400000) |
| 9 |
+ |
|
| 10 |
|
bool DDrPatch_MakeJump(void* from, void* to); |
| 11 |
|
bool DDrPatch_MakeCall(void* from, void* to); |
| 12 |
< |
bool DDrPatch_String(char* dest, const char* string, int length); |
| 13 |
< |
bool DDrPatch_Byte(char* dest, char value); |
| 14 |
< |
bool DDrPatch_Int32(int* dest, int value); |
| 15 |
< |
bool DDrPatch_Int16(short* dest, short value); |
| 12 |
> |
void* DDrPatch_MakeDetour(void* from, void* to); |
| 13 |
> |
bool DDrPatch_String(char* dest, const unsigned char* string, int length); |
| 14 |
> |
bool DDrPatch_Byte(char* dest, unsigned char value); |
| 15 |
> |
bool DDrPatch_Int32(int* dest, unsigned int value); |
| 16 |
> |
bool DDrPatch_Int16(short* dest, unsigned short value); |
| 17 |
> |
bool DDrPatch_NOOP(char* dest, unsigned int length); |
| 18 |
> |
|
| 19 |
> |
void DDrPatch_PrintDisasm(void* addr, int instLimit, int sizeLimit); |
| 20 |
|
|
| 21 |
|
#endif |