Classes | Functions

vancouver/model/vga.cc File Reference

#include "nul/motherboard.h"
#include "executor/bios.h"
#include "host/screen.h"

Classes

class  Vga
 Basic VGA emulation. More...

Functions

 PARAM (vga,{unsigned long fbsize=argv[1];if(fbsize==~0ul) fbsize=_default_vga_fbsize;if(fbsize< 128) fbsize=128;fbsize<<=10;MessageHostOp msg(MessageHostOp::OP_ALLOC_FROM_GUEST, fbsize);MessageHostOp msg2(MessageHostOp::OP_GUEST_MEM, 0UL);if(!mb.bus_hostop.send(msg)||!mb.bus_hostop.send(msg2)) Logging::panic("%s failed to alloc %ld from guest memory\n", __PRETTY_FUNCTION__, fbsize);Device *dev=new Vga(mb, argv[0], msg2.ptr+msg.phys, msg.phys, fbsize);mb.bus_ioin.add(dev, Vga::receive_static< MessageIOIn >);mb.bus_ioout.add(dev, Vga::receive_static< MessageIOOut >);mb.bus_bios.add(dev, Vga::receive_static< MessageBios >);mb.bus_mem.add(dev, Vga::receive_static< MessageMem >);mb.bus_memregion.add(dev, Vga::receive_static< MessageMemRegion >);mb.bus_discovery.add(dev, Vga::receive_static< MessageDiscovery >);},"vga:iobase,fbsize=128 - attach a virtual VGA controller.","Example: 'vga:0x3c0,4096'","The framebuffersize is given in kilobyte and the minimum is 128k.","This also adds support for VGA and VESA graphics BIOS.")

Function Documentation

PARAM ( vga   ) 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines