forked from AbleOS/ableos
41 lines
783 B
Plaintext
41 lines
783 B
Plaintext
pci := @use("../../../libraries/pci/src/lib.hb");
|
|
.{PCIAddress} := pci
|
|
|
|
SVGADevice := struct {
|
|
pciAddr: PCIAddress,
|
|
ioBase: u32,
|
|
fifoMem: ^u32,
|
|
fbMem: ^u8,
|
|
fifoSize: int,
|
|
fbSize: int,
|
|
vramSize: int,
|
|
deviceVersionId: int,
|
|
capabilities: int,
|
|
width: int,
|
|
height: int,
|
|
bpp: int,
|
|
pitch: int,
|
|
}
|
|
|
|
svga_device := fn(): SVGADevice {
|
|
pci_addr := PCIAddress.(0, 0, 0)
|
|
|
|
return SVGADevice.(pci_addr, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
|
|
}
|
|
|
|
/*
|
|
struct {
|
|
uint32 reservedSize;
|
|
Bool usingBounceBuffer;
|
|
uint8 bounceBuffer[1024 * 1024];
|
|
uint32 nextFence;
|
|
} fifo;
|
|
|
|
volatile struct {
|
|
uint32 pending;
|
|
uint32 switchContext;
|
|
IntrContext oldContext;
|
|
IntrContext newContext;
|
|
uint32 count;
|
|
} irq;
|
|
*/ |