Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions | Variables
mahaf.cpp File Reference
#include "precompiled.h"
#include "lib/sysdep/os/win/mahaf.h"
#include "lib/config2.h"
#include "lib/module_init.h"
#include "lib/sysdep/os/win/wutil.h"
#include <winioctl.h>
#include "lib/sysdep/os/win/aken/aken.h"
#include "lib/sysdep/os/win/wversion.h"

Go to the source code of this file.

Functions

static u32 ReadPort (u16 port, u8 numBytes)
 
u8 mahaf_ReadPort8 (u16 port)
 
u16 mahaf_ReadPort16 (u16 port)
 
u32 mahaf_ReadPort32 (u16 port)
 
static void WritePort (u16 port, u32 value, u8 numBytes)
 
void mahaf_WritePort8 (u16 port, u8 value)
 
void mahaf_WritePort16 (u16 port, u16 value)
 
void mahaf_WritePort32 (u16 port, u32 value)
 
bool mahaf_IsPhysicalMappingDangerous ()
 
volatile void * mahaf_MapPhysicalMemory (uintptr_t physicalAddress, size_t numBytes)
 
void mahaf_UnmapPhysicalMemory (volatile void *virtualAddress)
 
static u64 ReadRegister (DWORD ioctl, u64 reg)
 
u64 mahaf_ReadModelSpecificRegister (u64 reg)
 
u64 mahaf_ReadPerformanceMonitoringCounter (u64 reg)
 
void mahaf_WriteModelSpecificRegister (u64 reg, u64 value)
 
static SC_HANDLE OpenServiceControlManager (DWORD access)
 
static void UninstallDriver ()
 
static Status Init ()
 
static void Shutdown ()
 
Status mahaf_Init ()
 
void mahaf_Shutdown ()
 

Variables

static HANDLE hAken = INVALID_HANDLE_VALUE
 
static ModuleInitState initState
 

Function Documentation

static Status Init ( )
static

Definition at line 348 of file mahaf.cpp.

Status mahaf_Init ( )

Definition at line 390 of file mahaf.cpp.

bool mahaf_IsPhysicalMappingDangerous ( )
Returns
whether mapping physical memory is known to be dangerous on this platform.

callable before or after mahaf_Init.

note: mahaf_MapPhysicalMemory will complain if it is called despite this function having returned true.

Definition at line 111 of file mahaf.cpp.

volatile void* mahaf_MapPhysicalMemory ( uintptr_t  physicalAddress,
size_t  numBytes 
)

Definition at line 122 of file mahaf.cpp.

u64 mahaf_ReadModelSpecificRegister ( u64  reg)

Definition at line 171 of file mahaf.cpp.

u64 mahaf_ReadPerformanceMonitoringCounter ( u64  reg)

Definition at line 176 of file mahaf.cpp.

u16 mahaf_ReadPort16 ( u16  port)

Definition at line 68 of file mahaf.cpp.

u32 mahaf_ReadPort32 ( u16  port)

Definition at line 75 of file mahaf.cpp.

u8 mahaf_ReadPort8 ( u16  port)

Definition at line 61 of file mahaf.cpp.

void mahaf_Shutdown ( )

Definition at line 395 of file mahaf.cpp.

void mahaf_UnmapPhysicalMemory ( volatile void *  virtualAddress)

Definition at line 142 of file mahaf.cpp.

void mahaf_WriteModelSpecificRegister ( u64  reg,
u64  value 
)

Definition at line 181 of file mahaf.cpp.

void mahaf_WritePort16 ( u16  port,
u16  value 
)

Definition at line 100 of file mahaf.cpp.

void mahaf_WritePort32 ( u16  port,
u32  value 
)

Definition at line 105 of file mahaf.cpp.

void mahaf_WritePort8 ( u16  port,
u8  value 
)

Definition at line 95 of file mahaf.cpp.

static SC_HANDLE OpenServiceControlManager ( DWORD  access)
static

Definition at line 199 of file mahaf.cpp.

static u32 ReadPort ( u16  port,
u8  numBytes 
)
static

Definition at line 45 of file mahaf.cpp.

static u64 ReadRegister ( DWORD  ioctl,
u64  reg 
)
static

Definition at line 156 of file mahaf.cpp.

static void Shutdown ( )
static

Definition at line 379 of file mahaf.cpp.

static void UninstallDriver ( )
static

Definition at line 220 of file mahaf.cpp.

static void WritePort ( u16  port,
u32  value,
u8  numBytes 
)
static

Definition at line 82 of file mahaf.cpp.

Variable Documentation

HANDLE hAken = INVALID_HANDLE_VALUE
static

Definition at line 38 of file mahaf.cpp.

ModuleInitState initState
static

Definition at line 388 of file mahaf.cpp.