'*****************************************************************************
'* 
'* PARAMETERS TO INITIALIZE VGA VIDEO MODES (via ports)
'*
'*****************************************************************************

public const VGA_MODE_COUNT as byte=0x14 'count of supported VGA modes
public dim VGA_3C2(VGA_MODE_COUNT) as byte=Array( _
 0xA7,0xA7,0xA7,0xA7,0x23,0x23,0x23,0xA6,0,0,0,0,0,0x63,0x63,0xA2,0xA3,0xE3,0xE3,0x63)
public const VGA_3C5_COUNT as byte=5
public dim VGA_3C5(VGA_3C5_COUNT*VGA_MODE_COUNT) as byte=Array( _
 0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0,0,0,0,0,0x03,0x03,0x03,0x03,0x03,0x01,0x01, _ //0
 0x0B,0x0B,0x01,0x01,0x0B,0x0B,0x01,0x00,0,0,0,0,0,0x09,0x01,0x01,0x01,0x01,0x01,0x01, _ //1
 0x01,0x01,0x01,0x01,0x03,0x03,0x01,0x03,0,0,0,0,0,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F, _ //2
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //3
 0x03,0x03,0x03,0x03,0x02,0x02,0x06,0x03,0,0,0,0,0,0x06,0x06,0x06,0x06,0x06,0x06,0x0E) //4 //other in reality???
public const VGA_3X5_COUNT as byte=0x19
public dim VGA_3X5(VGA_3X5_COUNT*VGA_MODE_COUNT) as byte=Array( _
 0x2D,0x2D,0x5B,0x5B,0x37,0x37,0x70,0x60,0,0,0,0,0,0x2D,0x5F,0x60,0x5F,0x5F,0x5F,0x5F, _ //0
 0x27,0x27,0x4F,0x4F,0x27,0x27,0x4F,0x4F,0,0,0,0,0,0x27,0x4F,0x4F,0x4F,0x4F,0x4F,0x4F, _ //1
 0x2D,0x2D,0x53,0x53,0x2D,0x2D,0x59,0x50,0,0,0,0,0,0x28,0x50,0x50,0x50,0x50,0x50,0x50, _ //2
 0x2D,0x2D,0x37,0x37,0x37,0x37,0x2D,0x3A,0,0,0,0,0,0x90,0x82,0x3A,0x82,0x82,0x82,0x82, _ //3
 0x28,0x28,0x51,0x51,0x30,0x30,0x5E,0x51,0,0,0,0,0,0x2B,0x54,0x50,0x54,0x54,0x54,0x54, _ //4
 0x6D,0x6D,0x5B,0x5B,0x14,0x14,0x06,0x60,0,0,0,0,0,0x80,0x80,0x60,0x80,0x80,0x80,0x80, _ //5
 0x6C,0x6C,0x6C,0x6C,0x04,0x04,0x04,0x70,0,0,0,0,0,0xBF,0xBF,0x70,0xBF,0x0B,0x0B,0xBF, _ //6
 0x1F,0x1F,0x1F,0x1F,0x11,0x11,0x11,0x1F,0,0,0,0,0,0x1F,0x1F,0x1F,0x1F,0x3E,0x3E,0x1F, _ //7
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //8
 0x0D,0x0D,0x0D,0x0D,0x01,0x01,0x01,0x0D,0,0,0,0,0,0xC0,0xC0,0x00,0x40,0x40,0x40,0x41, _ //9
 0x06,0x06,0x06,0x06,0x00,0x00,0x00,0x06,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //A (cursor start - hack for 8x8)
 0x07,0x07,0x07,0x07,0x00,0x00,0x00,0x07,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //B (cursor end - hack for 8x8)
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //C
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //D
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //E
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x31,0x59,0x00,0x00,0x59,0x00,0x00, _ //F
 0x5E,0x5E,0x5E,0x5E,0xE1,0xE1,0xE0,0x5E,0,0,0,0,0,0x9C,0x9C,0x5E,0x83,0xEA,0xEA,0x9C, _ //10
 0x2B,0x2B,0x2B,0x2B,0x24,0x24,0x23,0x2E,0,0,0,0,0,0x8E,0x8E,0x2E,0x85,0x8C,0x8C,0x8E, _  //11
 0x5D,0x5D,0x5D,0x5D,0xC7,0xC7,0xC7,0x5D,0,0,0,0,0,0x8F,0x8F,0x5D,0x5D,0xDF,0xDF,0x8F, _ //12
 0x14,0x14,0x28,0x28,0x14,0x14,0x28,0x28,0,0,0,0,0,0x14,0x28,0x28,0x28,0x28,0x28,0x28, _ //13
 0x0F,0x0F,0x0F,0x0F,0x00,0x00,0x00,0x0D,0,0,0,0,0,0x00,0x00,0x0D,0x0F,0x0F,0x00,0x40, _ //14
 0x5E,0x5E,0x5E,0x5E,0xE0,0xE0,0xDF,0x5E,0,0,0,0,0,0x96,0x96,0x5E,0x63,0xE7,0xE7,0x96, _ //15
 0x0A,0x0A,0x0A,0x0A,0xF0,0xF0,0xEF,0x6E,0,0,0,0,0,0xB9,0xB9,0x6E,0xBA,0x04,0x04,0xB9, _ //16
 0xA3,0xA3,0xA3,0xA3,0xA2,0xA2,0xC2,0xA3,0,0,0,0,0,0xE3,0xE3,0xE3,0xE3,0xC3,0xE3,0xA3, _ //17
 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0,0,0,0,0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF) //18
public const VGA_3CF_COUNT as byte=9
public dim VGA_3CF(VGA_3CF_COUNT*VGA_MODE_COUNT) as byte=Array( _
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0,0,0, _ //0
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0,0,0, _ //1
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0,0,0, _ //2
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0,0,0, _ //3
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0,0,0, _ //4
 0x10,0x10,0x10,0x10,0x30,0x30,0x00,0x10,0,0,0,0,0,0x10,0x00,0x00,0x00,0x00,0x00,0x40, _ //5
 0x0E,0x0E,0x0E,0x0E,0x0F,0x0F,0x0D,0x0A,0,0,0,0,0,0x05,0x05,0x05,0x05,0x05,0x05,0x05, _ //6
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x0F,0x0F,0x0F,0x05,0x0F,0x0F, _ //7
 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0,0,0,0,0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF) //8
public const VGA_3C1_COUNT=0x14
public dim VGA_3C1(VGA_3C1_COUNT*VGA_MODE_COUNT) as byte=Array( _
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //0
 0x01,0x01,0x01,0x01,0x13,0x13,0x17,0x08,0,0,0,0,0,0x01,0x01,0x08,0x01,0x08,0x01,0x01, _ //1
 0x02,0x02,0x02,0x02,0x15,0x15,0x17,0x08,0,0,0,0,0,0x02,0x02,0x00,0x02,0x3F,0x02,0x02, _ //2
 0x03,0x03,0x03,0x03,0x17,0x17,0x17,0x08,0,0,0,0,0,0x03,0x03,0x00,0x03,0x3F,0x03,0x03, _ //3
 0x04,0x04,0x04,0x04,0x02,0x02,0x17,0x08,0,0,0,0,0,0x04,0x04,0x18,0x04,0x18,0x04,0x04, _ //4
 0x05,0x05,0x05,0x05,0x04,0x04,0x17,0x08,0,0,0,0,0,0x05,0x05,0x18,0x05,0x18,0x05,0x05, _ //5
 0x0E,0x0E,0x0E,0x0E,0x06,0x06,0x17,0x08,0,0,0,0,0,0x06,0x06,0x00,0x06,0x3F,0x06,0x06, _ //6
 0x07,0x07,0x07,0x07,0x07,0x07,0x17,0x08,0,0,0,0,0,0x07,0x07,0x00,0x07,0x3F,0x07,0x07, _ //7
 0x10,0x10,0x10,0x10,0x10,0x10,0x17,0x10,0,0,0,0,0,0x10,0x10,0x00,0x38,0x3F,0x08,0x08, _ //8
 0x11,0x11,0x11,0x11,0x11,0x11,0x17,0x18,0,0,0,0,0,0x11,0x11,0x08,0x39,0x3F,0x09,0x09, _ //9
 0x12,0x12,0x12,0x12,0x12,0x12,0x17,0x18,0,0,0,0,0,0x12,0x12,0x00,0x3A,0x3F,0x0A,0x0A, _ //A
 0x13,0x13,0x13,0x13,0x13,0x13,0x17,0x18,0,0,0,0,0,0x13,0x13,0x00,0x3B,0x3F,0x0B,0x0B, _ //B
 0x14,0x14,0x14,0x14,0x14,0x14,0x17,0x18,0,0,0,0,0,0x14,0x14,0x00,0x3C,0x3F,0x0C,0x0C, _ //C
 0x15,0x15,0x15,0x15,0x15,0x15,0x17,0x18,0,0,0,0,0,0x15,0x15,0x18,0x3D,0x3F,0x0D,0x0D, _ //D
 0x16,0x16,0x16,0x16,0x16,0x16,0x17,0x18,0,0,0,0,0,0x16,0x16,0x00,0x3E,0x3F,0x0E,0x0E, _ //E
 0x17,0x17,0x17,0x17,0x17,0x17,0x18,0x17,0,0,0,0,0,0x17,0x17,0x3F,0x3F,0x3F,0x0F,0x0F, _ //F
 0x08,0x08,0x08,0x08,0x01,0x01,0x01,0x01,0,0,0,0,0,0x01,0x01,0x08,0x01,0x01,0x01,0x41, _ //10
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00, _ //11
 0x0F,0x0F,0x0F,0x0F,0x03,0x03,0x01,0x0F,0,0,0,0,0,0x0F,0x0F,0x05,0x0F,0x0F,0x0F,0x0F, _ //12
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0,0,0,0,0,0x00,0x00,0x00,0x00,0x00,0x00,0x00) //13

