NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
HostVesa Class Reference

A Vesa console. More...

Inheritance diagram for HostVesa:
StaticReceiver< HostVesa > Device

Public Member Functions

bool receive (MessageHostOp &msg)
 Answer HostRequests from InternalHostDevices.
bool receive (MessageTimer &msg)
bool receive (MessageIOIn &msg)
bool receive (MessageIOOut &msg)
bool receive (MessageHwPciConfig &msg)
bool receive (MessageVesa &msg)
 HostVesa (Motherboard &hostmb, unsigned debug)
- Public Member Functions inherited from StaticReceiver< HostVesa >
 StaticReceiver ()
- Public Member Functions inherited from Device
void debug_dump ()
 Device (const char *debug_name)

Private Types

enum  { SS_SEG = 0x1000, ES_SEG0 = 0x2000, ES_SEG1 = 0x3000, TIMER_NR = 2 }

Private Member Functions

bool vbe_call (unsigned eax, unsigned short es_seg, unsigned ecx=0, unsigned edx=0, unsigned ebx=0)
template<typename T >
vbe_to_ptr (unsigned ptr)
void add_mode (unsigned short mode, unsigned seg, unsigned min_attributes)

Private Attributes

Motherboard_hostmb
Motherboard _mb
char * _mem
unsigned long _memsize
CpuState _cpu
timevalue _timeout
unsigned long _framebuffer_size
unsigned long _framebuffer_phys
unsigned short _version
unsigned short _modecount
Vbe::ModeInfoBlock_modelist
unsigned _instructions
unsigned _debug

Additional Inherited Members

- Static Public Member Functions inherited from StaticReceiver< HostVesa >
static bool receive_static (Device *o, M &msg)

Detailed Description

A Vesa console.

State: unstable Features: get linear modes, validate physpointer, set LinBytesPerScanline, timeouts Missing: vesa1.2 support

Member Enumeration Documentation

anonymous enum
private
Enumerator:
SS_SEG 
ES_SEG0 
ES_SEG1 
TIMER_NR 

Constructor & Destructor Documentation

HostVesa::HostVesa ( Motherboard hostmb,
unsigned  debug 
)
inline

Member Function Documentation

void HostVesa::add_mode ( unsigned short  mode,
unsigned  seg,
unsigned  min_attributes 
)
inlineprivate
bool HostVesa::receive ( MessageHostOp msg)
inline

Answer HostRequests from InternalHostDevices.

bool HostVesa::receive ( MessageTimer msg)
inline
bool HostVesa::receive ( MessageIOIn msg)
inline
bool HostVesa::receive ( MessageIOOut msg)
inline
bool HostVesa::receive ( MessageHwPciConfig msg)
inline
bool HostVesa::receive ( MessageVesa msg)
inline
bool HostVesa::vbe_call ( unsigned  eax,
unsigned short  es_seg,
unsigned  ecx = 0,
unsigned  edx = 0,
unsigned  ebx = 0 
)
inlineprivate
template<typename T >
T HostVesa::vbe_to_ptr ( unsigned  ptr)
inlineprivate

Member Data Documentation

CpuState HostVesa::_cpu
private
unsigned HostVesa::_debug
private
unsigned long HostVesa::_framebuffer_phys
private
unsigned long HostVesa::_framebuffer_size
private
Motherboard& HostVesa::_hostmb
private
unsigned HostVesa::_instructions
private
Motherboard HostVesa::_mb
private
char* HostVesa::_mem
private
unsigned long HostVesa::_memsize
private
unsigned short HostVesa::_modecount
private
Vbe::ModeInfoBlock* HostVesa::_modelist
private
timevalue HostVesa::_timeout
private
unsigned short HostVesa::_version
private

The documentation for this class was generated from the following file: