grub/grub-core/video/sis315_init.c
Vladimir 'phcoder' Serbinenko 736e0ade54 Fuloong video init support.
* include/grub/vga.h (grub_vga_write_arx): inb monochrome address as
	well.
	(grub_vga_read_arx): New function.
	* grub-core/video/sis315pro.c (GRUB_SIS315PRO_MMIO_SPACE): New
	definition.
	(framebuffer): New members io, mmioptr and mmiobase.
	(read_sis_cmd): New function.
	(write_sis_cmd): Likewise.
	(grub_video_sis315pro_setup): Do the initialisation. Use 640x480
	rather than 640x400.
	* grub-core/video/sis315_init.c: New file.
2011-05-16 02:34:58 +02:00

158 lines
2.7 KiB
C

static const struct { grub_uint8_t reg; grub_uint8_t val; } sr_dump [] =
{
{ 0x28, 0x81 },
{ 0x2a, 0x00 },
{ 0x29, 0xe1 },
{ 0x2b, 0x81 },
{ 0x2d, 0x00 },
{ 0x2c, 0xe1 },
{ 0x2e, 0x81 },
{ 0x30, 0x00 },
{ 0x2f, 0xe1 },
{ 0x28, 0x01 },
{ 0x29, 0x22 },
{ 0x28, 0x3b },
{ 0x29, 0x22 },
{ 0x2a, 0x01 },
{ 0x2e, 0x01 },
{ 0x2f, 0x22 },
{ 0x2e, 0x3b },
{ 0x2f, 0x22 },
{ 0x30, 0x01 },
{ 0x15, 0x00 },
{ 0x1b, 0x30 },
{ 0x16, 0x0f },
{ 0x16, 0x8f },
{ 0x17, 0xba },
{ 0x16, 0x0f },
{ 0x16, 0x8f },
{ 0x1f, 0x00 },
{ 0x20, 0x20 },
{ 0x23, 0xf6 },
{ 0x24, 0x0d },
{ 0x25, 0x33 },
{ 0x21, 0x84 },
{ 0x22, 0x00 },
{ 0x27, 0x1f },
{ 0x31, 0x00 },
{ 0x33, 0x00 },
{ 0x32, 0x11 },
{ 0x25, 0x33 },
{ 0x05, 0x86 },
{ 0x01, 0x20 },
{ 0x32, 0x11 },
{ 0x1e, 0x00 },
{ 0x1d, 0x00 },
{ 0x00, 0x03 },
{ 0x01, 0x21 },
{ 0x02, 0x0f },
{ 0x03, 0x00 },
{ 0x04, 0x0e },
{ 0x0a, 0x00 },
{ 0x0b, 0x00 },
{ 0x0c, 0x00 },
{ 0x0d, 0x00 },
{ 0x0e, 0x00 },
{ 0x37, 0x00 },
{ 0x0a, 0x00 },
{ 0x0b, 0x00 },
{ 0x0c, 0x05 },
{ 0x0e, 0x00 },
{ 0x0e, 0x00 },
{ 0x10, 0x0b },
{ 0x31, 0x00 },
{ 0x2b, 0x01 },
{ 0x2c, 0xe1 },
{ 0x2b, 0x1b },
{ 0x2c, 0xe1 },
{ 0x2d, 0x01 },
{ 0x3d, 0x00 },
{ 0x08, 0x84 },
{ 0x09, 0x00 },
{ 0x3d, 0x01 },
{ 0x1f, 0x00 },
{ 0x06, 0x02 },
{ 0x0f, 0x00 },
{ 0x17, 0xba },
{ 0x21, 0xa4 },
{ 0x32, 0x11 },
{ 0x07, 0x18 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x01, 0x01 },
{ 0x21, 0x84 },
{ 0x01, 0x21 },
{ 0x16, 0x8f },
{ 0x18, 0xa9 },
{ 0x19, 0xa0 },
{ 0x1b, 0x30 },
{ 0x17, 0xb8 },
{ 0x19, 0xa3 },
{ 0x13, 0x00 },
{ 0x14, 0x00 },
{ 0x14, 0x02 },
{ 0x15, 0x00 },
{ 0x16, 0x0f },
{ 0x16, 0x8f },
{ 0x1d, 0x00 },
{ 0x14, 0x00 },
{ 0x14, 0x01 },
{ 0x15, 0x00 },
{ 0x16, 0x0f },
{ 0x16, 0x8f },
{ 0x1d, 0x00 },
{ 0x14, 0x01 },
{ 0x14, 0x01 },
{ 0x15, 0x10 },
{ 0x13, 0x35 },
{ 0x14, 0x51 },
{ 0x16, 0x0f },
{ 0x16, 0x8f },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x11 },
{ 0x1d, 0x11 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x1d, 0x00 },
{ 0x17, 0xba },
{ 0x19, 0xa0 },
{ 0x19, 0xa0 },
{ 0x01, 0x01 },
{ 0x16, 0x0f },
{ 0x18, 0xa9 },
{ 0x19, 0xa0 },
{ 0x1b, 0x30 },
{ 0x21, 0xa4 },
{ 0x05, 0x86 },
};
static const grub_uint8_t gr[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x05, 0x0f,
0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};