NPA_Read_Physical_Memory

Used to access the DOS address space for reading CMOS and BIOS data.

Thread Context:Blocking
Requirements:The physical address range must be below 0x100000.

Syntax

    LONG NPA_Read_Physical_Memory (
       LONG   npaHandle,
       BYTE  *source,
       BYTE  *destination,
       LONG   numberOfUnits,
       LONG   unitLength
       );
    
    

Parameters

npaHandle
(IN) The CDM's or HAM's handle for using the NPA APIs, assigned during NPA_Register_CDM_Module or NPA_Register_HAM_Module, respectively.
source
(IN) Points to the physical address space that is to be read. This space must be in physical (Non-mapped) memory below 0x100000.
destination
(IN) Points to the logical (valid mapped) memory space where the data is to be read to. This memory range must be below 0x100000.
numberOfUnits
(IN) Number of units (BYTEs, WORDs, or LONGs) to be read from memory.
unitLength
(IN) Length in BYTEs of the unit requested. The only acceptable values of this parameter are: 1 for BYTE units, 2 for WORD units, or 4 for LONG units.

Return Values

The following table lists return values and descriptions.

zero

Successful

nonzero

Unsuccessful

Remarks

NPA_Read_Physical_Memory assumes that data passed in will not hang the machine. WORD sized requests must begin on WORD boundaries and LONG sized requests must begin on LONG boundaries.