| 38 |
|
bool patch_multibyte = false; |
| 39 |
|
bool patch_cheattable = true; |
| 40 |
|
bool patch_argb8888 = true; |
| 41 |
+ |
bool patch_killvtune = true; |
| 42 |
|
|
| 43 |
|
bool patch_safeprintf = true; |
| 44 |
|
bool patch_daodandisplayenum = true; |
| 162 |
|
DDrPatch_Int32 (OniExe + 0x000f617a, (int)&DDr_CheatTable[0].message_on); |
| 163 |
|
} |
| 164 |
|
|
| 165 |
+ |
// ARGB8888 textures |
| 166 |
|
if (patch_argb8888) |
| 167 |
|
{ |
| 168 |
|
DDrPatch_Byte (OniExe + 0x00135af0, 0x07); |
| 169 |
|
DDrPatch_Byte (OniExe + 0x00135af4, 0x0B); |
| 170 |
|
} |
| 171 |
|
|
| 172 |
+ |
// Disable loading the vtuneapi.dll |
| 173 |
+ |
if (patch_killvtune) |
| 174 |
+ |
DDrPatch_Byte (OniExe + 0x00026340, 0xC3); |
| 175 |
+ |
|
| 176 |
|
return true; |
| 177 |
|
} |
| 178 |
|
|
| 234 |
|
patch_cheattable = !stricmp(inifile_cleanstr(value), "true"); |
| 235 |
|
else if (!stricmp(name, "argb8888")) |
| 236 |
|
patch_argb8888 = !stricmp(inifile_cleanstr(value), "true"); |
| 237 |
+ |
else if (!stricmp(name, "killvtune")) |
| 238 |
+ |
patch_killvtune = !stricmp(inifile_cleanstr(value), "true"); |
| 239 |
|
else if (!stricmp(name, "safeprintf")) |
| 240 |
|
patch_safeprintf = !stricmp(inifile_cleanstr(value), "true"); |
| 241 |
|
else if (!stricmp(name, "daodandisplayenum")) |
| 443 |
|
SLrDaodan_Patch(); |
| 444 |
|
|
| 445 |
|
if (patch_cheater) |
| 446 |
+ |
{ |
| 447 |
|
DDrPatch_MakeCall(OniExe + 0x000f618f, DDrCheater); |
| 448 |
+ |
DDrPatch_Int16(OniExe + 0x000deb45, 0x5590); |
| 449 |
+ |
DDrPatch_MakeCall(OniExe + 0x000deb47, FallingFrames); |
| 450 |
+ |
DDrPatch_MakeJump(OniExe + 0x0010f021, DDrCheater_LevelLoad); |
| 451 |
+ |
} |
| 452 |
|
|
| 453 |
|
init_daodan_gl(); |
| 454 |
|
|