RTEMS CPU Kit with SuperCore
4.11.3
|
Intel I386 CPU Dependent Source. More...
Go to the source code of this file.
Functions | |
void * | i386_Logical_to_physical (unsigned short segment, void *address) |
void * | i386_Physical_to_logical (unsigned short segment, void *address) |
RTEMS_INLINE_ROUTINE void * | i386_Real_to_physical (uint16_t segment, uint16_t offset) |
Converts real mode pointer {segment, offset} to physical address. More... | |
int | i386_Physical_to_real (void *address, uint16_t *segment, uint16_t *offset) |
Retreives real mode pointer elements {segmnet, offset} from physical address. More... | |
Intel I386 CPU Dependent Source.
This include file contains information pertaining to the Intel i386 processor.
int i386_Physical_to_real | ( | void * | address, |
uint16_t * | segment, | ||
uint16_t * | offset | ||
) |
Retreives real mode pointer elements {segmnet, offset} from physical address.
i386_Physical_to_real Function returns the highest segment (base) address possible. Example: input address - 0x4B3A2 output segment - 0x4B3A offset - 0x2 input address - 0x10F12E output segment - 0xFFFF offset - 0xF13E
[in] | address | address to be converted, must be less than 0x10FFEF |
[out] | segment | segment computed from address |
[out] | offset | offset computed from address |
0 | address not convertible |
1 | segment and offset extracted |
Referenced by i386_Real_to_physical().
RTEMS_INLINE_ROUTINE void* i386_Real_to_physical | ( | uint16_t | segment, |
uint16_t | offset | ||
) |
Converts real mode pointer {segment, offset} to physical address.
i386_Real_to_physical
[in] | segment | used with offset to compute physical address |
[in] | offset | used with segment to compute physical address |
physical | address |
References i386_Physical_to_real().