Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
M
 malloc
 managememoryl1
 ManageMemoryL1
 managememoryl2
 ManageMemoryL2
 MapL1Table32
 MapL2Table32
 memchr
 memcmp
 memcpy
 memmap
 MemMap
 memmove
 memset
 mglGetConnectorRange
 mglGetConnectorState
 mglGetEngineRange
 mglGetEngineState
 mglGetLastRangeEntry
 mglOpen
 mglSetConnectorState
 mglSetEngineState
 ModMain
 mpentry
O
 Oops
 outportb
 outportd
 outportw
P
 Pagewalk32
 PagewalkEx32
 PCI_bar_readaddress
 PCI_bar_readmask
 PCI_type1_readbyte
 PCI_type1_readdword
 PCI_type1_readword
 PCI_type1_writedword
 pcimgr_handler
 pcimgr_handlerstub
 portalloc
 PortAlloc
 prepareinterrupt
 PrintAPICLine
 PrintCPUCaps
 PrintHex4
 PrintInitLine
 PrintLine
 PrintString
 ProcessorDiagnostic
 ProcessorF00Fpatch
 ProcessorNoFPpatch
 ProcessorSYSEpatch
 ProcessorTLBpatch
 PutPixel
Q
 qsort
 queryinterfaces, MCQueryUtility
 QueueThread
void * malloc(size_t size)
Allocates size bytes of memory
Request memory from the kernel
Insert a node into the memory manager tree at the 1st level The node will describe 2M of memory in 4K units
Request memory from the kernel
Insert a node into the memory manager tree at the 3rd level The node will describe 1G of memory in 2M units
Inserts a new leaf into the memory allocator map
Ups the reference count to a memory location.
void * memchr(const void *s,
int c,
size_t n)
Finds the first occurance of the character c in s, where n is the maximum amount of bytes to compare
int memcmp(const void *s1,
const void *s2,
size_t n)
Compares n bytes of s1 to n bytes of s2
void * memcpy(void * _PDCLIB_restrict s1,
const void * _PDCLIB_restrict s2,
size_t n)
Copies n bytes from s2 to s1, where s1 and s2 do not overlap
Request memory from the kernel
Maps a certain region in physical space to a region in kernel space
void * memmove(void *s1,
const void *s2,
size_t n)
Copies n bytes from s2 to s1, where s2 and s1 can overlap
void * memset(void *s,
int c,
size_t n)
Fills s with n times the value c
int mglGetConnectorRange(int index,
unsigned int property)
Gets the valid range of values from a connector property.
int mglGetConnectorState(int index,
unsigned int property)
Gets an graphics output connector state property
int mglGetEngineRange(int index,
unsigned int property)
Gets the valid range of values from a engine property.
int mglGetEngineState(int index,
unsigned int property)
Gets an graphics engine state property
void mglGetLastRangeEntry(int index,
int *first,
int *last,
int *modulus)
Retrieves a range segment from an graphics component
int mglOpen(unsigned int *engines,
unsigned int *connectors)
Initialize the driver
void mglSetConnectorState(int index,
unsigned int property,
int value)
Sets an graphics output connector state property
void mglSetEngineState(int index,
unsigned int property,
int value)
Sets an graphics engine state property
Sub ModMain CDecl alias "main" ()
controls the application
the common entry code for multiprocessor systems
Kills the thread and prints a report to port e9
writes a byte to an x86 i/o port
writes a 32-bit doubleword to an x86 i/o port
writes a 16-bit word to an x86 i/o port
Converts a linear address to the corresponding physical address, using the current value of CR3
Converts a linear address to the corresponding physical address, using the current value of CR3
Function PCI_bar_readaddress(
   ByVal Bus As Unsigned Integer,
   ByVal Device As Unsigned Integer,
   ByVal Func As Unsigned Integer,
   ByVal Bar As Unsigned Integer
) As Unsigned Integer
Returns the address contained in a specific Base Address Register
Function PCI_bar_readmask(
   ByVal Bus As Unsigned Integer,
   ByVal Device As Unsigned Integer,
   ByVal Func As Unsigned Integer,
   ByVal Bar As Unsigned Integer
) As Unsigned Integer
Returns the size mask for the selected Base Address Register
Function PCI_type1_readbyte(ByVal Bus As Unsigned Integer,
ByVal Device As Unsigned Integer,
ByVal Func As Unsigned Integer,
ByVal Offset As Unsigned Integer) As Unsigned Byte
Grabs a byte from PCI configuration space using configuration method 1
Function PCI_type1_readdword(
   ByVal Bus As Unsigned Integer,
   ByVal Device As Unsigned Integer,
   ByVal Func As Unsigned Integer,
   ByVal Offset As Unsigned Integer
) As Unsigned Integer
Grabs a 4-byte doubleword from PCI configuration space using configuration method 1
Function PCI_type1_readword(
   ByVal Bus As Unsigned Integer,
   ByVal Device As Unsigned Integer,
   ByVal Func As Unsigned Integer,
   ByVal Offset As Unsigned Integer
) As Unsigned Short
Grabs a 2-byte word from PCI configuration space using configuration method 1
Sub PCI_type1_writedword(ByVal Bus As Unsigned Integer,
ByVal Device As Unsigned Integer,
ByVal Func As Unsigned Integer,
ByVal Offset As Unsigned Integer,
Value As Unsigned Integer)
Grabs a 4-byte doubleword from PCI configuration space using configuration method 1
Sub pcimgr_handler (ByVal f As Long,
ByVal device As Long,
ByVal param3 As Long,
ByVal param4 As Long)
handles the incoming calls
Sub pcimgr_handlerstub()
converts the register calling convention into a FB-compatible convention
Request i/o ports from the kernel
Allocates pages for the I/O permission bitmap.
Prepares a VESA bios call
Prints the APIC Bus frequency
Converts a dword value to hex and emit it to a string
prints the initalizer line
prints a line to the display
Public Sub PrintString (As String,  
vram As Byte Ptr,  
offset as long =  0)
Prints a string to video memory
Gets the CPU, VM and related information
for installing the workaround for the intel LOCK CMPXCHG8B bug
changes the #NM interrupt handler to fault (using self-modifying code) instead of switching fpu contexts
enables the use of SYSENTER/SYSEXIT instructions
replaces InvalidatePage with a more efficient version
Sub PutPixel(ByVal x As Long,
ByVal y As Long,
ByVal colour As Long)
sets a pixel via the BLOBS interface
void qsort(void *base,
size_t nmemb,
size_t size,
int (*compar)( const void *, const void * ))
Sorts an array in memory
Declare Virtual Sub queryinterfaces (ByVal channel As Byte Ptr)
Handle the actual query message
adds a thread to the execution queue