2021-04-13 04:45:22 -07:00
|
|
|
#include <Windows.h>
|
2021-06-08 10:54:49 -07:00
|
|
|
#include <string>
|
2021-04-13 04:45:22 -07:00
|
|
|
|
|
|
|
#include "r5dev.h"
|
2021-06-14 17:58:48 -07:00
|
|
|
#include "id3dx.h"
|
2021-04-13 04:45:22 -07:00
|
|
|
#include "hooks.h"
|
2021-06-08 10:54:49 -07:00
|
|
|
#include "opcptc.h"
|
|
|
|
#include "console.h"
|
|
|
|
#include "utility.h"
|
2021-04-13 04:45:22 -07:00
|
|
|
|
2021-06-19 07:18:39 -07:00
|
|
|
///////////////////////////////////////////////////////////////////////////////////
|
2021-04-17 04:51:04 -07:00
|
|
|
//---------------------------------------------------------------------------------
|
2021-06-08 10:54:49 -07:00
|
|
|
// Init
|
2021-04-17 04:51:04 -07:00
|
|
|
//---------------------------------------------------------------------------------
|
2021-06-19 07:18:39 -07:00
|
|
|
///////////////////////////////////////////////////////////////////////////////////
|
2021-04-13 04:45:22 -07:00
|
|
|
|
|
|
|
void InitializeR5Dev()
|
|
|
|
{
|
|
|
|
SetupConsole();
|
|
|
|
InstallHooks();
|
2021-06-08 10:54:49 -07:00
|
|
|
InstallOpcodes();
|
2021-04-25 14:36:55 -07:00
|
|
|
printf("+-----------------------------------------------------------------------------+\n");
|
|
|
|
printf("| R5 DEV -- INITIALIZED ------------------------------------------------- |\n");
|
|
|
|
printf("+-----------------------------------------------------------------------------+\n");
|
2021-06-08 10:54:49 -07:00
|
|
|
printf("\n");
|
2021-04-13 04:45:22 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
void TerminateR5Dev()
|
|
|
|
{
|
|
|
|
RemoveHooks();
|
|
|
|
FreeConsole();
|
|
|
|
}
|
|
|
|
|
2021-06-19 07:18:39 -07:00
|
|
|
///////////////////////////////////////////////////////////////////////////////////
|
2021-06-08 10:54:49 -07:00
|
|
|
//---------------------------------------------------------------------------------
|
2021-06-17 17:07:26 -07:00
|
|
|
// Entry
|
2021-06-08 10:54:49 -07:00
|
|
|
//---------------------------------------------------------------------------------
|
2021-06-19 07:18:39 -07:00
|
|
|
///////////////////////////////////////////////////////////////////////////////////
|
2021-06-08 10:54:49 -07:00
|
|
|
|
2021-04-13 04:45:22 -07:00
|
|
|
BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReason, LPVOID lpReserved)
|
|
|
|
{
|
|
|
|
|
|
|
|
switch (dwReason)
|
|
|
|
{
|
|
|
|
case DLL_PROCESS_ATTACH:
|
2021-04-17 04:51:04 -07:00
|
|
|
{
|
2021-04-13 04:45:22 -07:00
|
|
|
InitializeR5Dev();
|
2021-06-14 17:58:48 -07:00
|
|
|
SetupDXSwapChain();
|
2021-04-13 04:45:22 -07:00
|
|
|
break;
|
2021-04-17 04:51:04 -07:00
|
|
|
}
|
2021-04-13 04:45:22 -07:00
|
|
|
|
|
|
|
case DLL_PROCESS_DETACH:
|
2021-04-17 04:51:04 -07:00
|
|
|
{
|
2021-04-13 04:45:22 -07:00
|
|
|
TerminateR5Dev();
|
2021-06-14 17:58:48 -07:00
|
|
|
RemoveDXHooks();
|
2021-04-13 04:45:22 -07:00
|
|
|
break;
|
2021-04-17 04:51:04 -07:00
|
|
|
}
|
2021-04-13 04:45:22 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
return TRUE;
|
2021-06-08 10:54:49 -07:00
|
|
|
}
|