rpi4-osdev/part12-wgt/wgt/wpal.c
2021-04-17 21:18:30 +01:00

280 lines
6.3 KiB
C

#include "../include/wgt.h"
void wloadpalette (unsigned char *data, color *pal)
{
unsigned char r, g, b;
int i;
if (data == NULL)
{
return;
}
for (i = 0; i < 256; i++) /* Load in RGB values */
{
r = 4 * *data++;
g = 4 * *data++;
b = 4 * *data++;
wsetrgb (i, r, g, b, pal); /* Set current palette */
}
}
/* VGA 256 colour default palette */
unsigned int vgapal[256] = {
rgb(0, 0, 0, 0),
rgb(1, 0, 0,170),
rgb(2, 0,170, 0),
rgb(3, 0,170,170),
rgb(4, 170, 0, 0),
rgb(5, 170, 0,170),
rgb(6, 170, 85, 0),
rgb(7, 170,170,170),
rgb(8, 85, 85, 85),
rgb(9, 85, 85,255),
rgb(10, 85,255, 85),
rgb(11, 85,255,255),
rgb(12, 255, 85, 85),
rgb(13, 255, 85,255),
rgb(14, 255,255, 85),
rgb(15, 255,255,255),
rgb(16, 0, 0, 0),
rgb(17, 20, 20, 20),
rgb(18, 32, 32, 32),
rgb(19, 44, 44, 44),
rgb(20, 56, 56, 56),
rgb(21, 68, 68, 68),
rgb(22, 80, 80, 80),
rgb(23, 97, 97, 97),
rgb(24, 113,113,113),
rgb(25, 129,129,129),
rgb(26, 145,145,145),
rgb(27, 161,161,161),
rgb(28, 182,182,182),
rgb(29, 202,202,202),
rgb(30, 226,226,226),
rgb(31, 255,255,255),
rgb(32, 0, 0,255),
rgb(33, 64, 0,255),
rgb(34, 125, 0,255),
rgb(35, 190, 0,255),
rgb(36, 255, 0,255),
rgb(37, 255, 0,190),
rgb(38, 255, 0,125),
rgb(39, 255, 0, 64),
rgb(40, 255, 0, 0),
rgb(41, 255, 64, 0),
rgb(42, 255,125, 0),
rgb(43, 255,190, 0),
rgb(44, 255,255, 0),
rgb(45, 190,255, 0),
rgb(46, 125,255, 0),
rgb(47, 64,255, 0),
rgb(48, 0,255, 0),
rgb(49, 0,255, 64),
rgb(50, 0,255,125),
rgb(51, 0,255,190),
rgb(52, 0,255,255),
rgb(53, 0,190,255),
rgb(54, 0,125,255),
rgb(55, 0, 64,255),
rgb(56, 125,125,255),
rgb(57, 157,125,255),
rgb(58, 190,125,255),
rgb(59, 222,125,255),
rgb(60, 255,125,255),
rgb(61, 255,125,222),
rgb(62, 255,125,190),
rgb(63, 255,125,157),
rgb(64, 255,125,125),
rgb(65, 255,157,125),
rgb(66, 255,190,125),
rgb(67, 255,222,125),
rgb(68, 255,255,125),
rgb(69, 222,255,125),
rgb(70, 190,255,125),
rgb(71, 157,255,125),
rgb(72, 125,255,125),
rgb(73, 125,255,157),
rgb(74, 125,255,190),
rgb(75, 125,255,222),
rgb(76, 125,255,255),
rgb(77, 125,222,255),
rgb(78, 125,190,255),
rgb(79, 125,157,255),
rgb(80, 182,182,255),
rgb(81, 198,182,255),
rgb(82, 218,182,255),
rgb(83, 234,182,255),
rgb(84, 255,182,255),
rgb(85, 255,182,234),
rgb(86, 255,182,218),
rgb(87, 255,182,198),
rgb(88, 255,182,182),
rgb(89, 255,198,182),
rgb(90, 255,218,182),
rgb(91, 255,234,182),
rgb(92, 255,255,182),
rgb(93, 234,255,182),
rgb(94, 218,255,182),
rgb(95, 198,255,182),
rgb(96, 182,255,182),
rgb(97, 182,255,198),
rgb(98, 182,255,218),
rgb(99, 182,255,234),
rgb(100, 182,255,255),
rgb(101, 182,234,255),
rgb(102, 182,218,255),
rgb(103, 182,198,255),
rgb(104, 0, 0,113),
rgb(105, 28, 0,113),
rgb(106, 56, 0,113),
rgb(107, 85, 0,113),
rgb(108, 113, 0,113),
rgb(109, 113, 0, 85),
rgb(110, 113, 0, 56),
rgb(111, 113, 0, 28),
rgb(112, 113, 0, 0),
rgb(113, 113, 28, 0),
rgb(114, 113, 56, 0),
rgb(115, 113, 85, 0),
rgb(116, 113,113, 0),
rgb(117, 85,113, 0),
rgb(118, 56,113, 0),
rgb(119, 28,113, 0),
rgb(120, 0,113, 0),
rgb(121, 0,113, 28),
rgb(122, 0,113, 56),
rgb(123, 0,113, 85),
rgb(124, 0,113,113),
rgb(125, 0, 85,113),
rgb(126, 0, 56,113),
rgb(127, 0, 28,113),
rgb(128, 56, 56,113),
rgb(129, 68, 56,113),
rgb(130, 85, 56,113),
rgb(131, 97, 56,113),
rgb(132, 113, 56,113),
rgb(133, 113, 56, 97),
rgb(134, 113, 56, 85),
rgb(135, 113, 56, 68),
rgb(136, 113, 56, 56),
rgb(137, 113, 68, 56),
rgb(138, 113, 85, 56),
rgb(139, 113, 97, 56),
rgb(140, 113,113, 56),
rgb(141, 97,113, 56),
rgb(142, 85,113, 56),
rgb(143, 68,113, 56),
rgb(144, 56,113, 56),
rgb(145, 56,113, 68),
rgb(146, 56,113, 85),
rgb(147, 56,113, 97),
rgb(148, 56,113,113),
rgb(149, 56, 97,113),
rgb(150, 56, 85,113),
rgb(151, 56, 68,113),
rgb(152, 80, 80,113),
rgb(153, 89, 80,113),
rgb(154, 97, 80,113),
rgb(155, 105, 80,113),
rgb(156, 113, 80,113),
rgb(157, 113, 80,105),
rgb(158, 113, 80, 97),
rgb(159, 113, 80, 89),
rgb(160, 113, 80, 80),
rgb(161, 113, 89, 80),
rgb(162, 113, 97, 80),
rgb(163, 113,105, 80),
rgb(164, 113,113, 80),
rgb(165, 105,113, 80),
rgb(166, 97,113, 80),
rgb(167, 89,113, 80),
rgb(168, 80,113, 80),
rgb(169, 80,113, 89),
rgb(170, 80,113, 97),
rgb(171, 80,113,105),
rgb(172, 80,113,113),
rgb(173, 80,105,113),
rgb(174, 80, 97,113),
rgb(175, 80, 89,113),
rgb(176, 0, 0, 64),
rgb(177, 16, 0, 64),
rgb(178, 32, 0, 64),
rgb(179, 48, 0, 64),
rgb(180, 64, 0, 64),
rgb(181, 64, 0, 48),
rgb(182, 64, 0, 32),
rgb(183, 64, 0, 16),
rgb(184, 64, 0, 0),
rgb(185, 64, 16, 0),
rgb(186, 64, 32, 0),
rgb(187, 64, 48, 0),
rgb(188, 64, 64, 0),
rgb(189, 48, 64, 0),
rgb(190, 32, 64, 0),
rgb(191, 16, 64, 0),
rgb(192, 0, 64, 0),
rgb(193, 0, 64, 16),
rgb(194, 0, 64, 32),
rgb(195, 0, 64, 48),
rgb(196, 0, 64, 64),
rgb(197, 0, 48, 64),
rgb(198, 0, 32, 64),
rgb(199, 0, 16, 64),
rgb(200, 32, 32, 64),
rgb(201, 40, 32, 64),
rgb(202, 48, 32, 64),
rgb(203, 56, 32, 64),
rgb(204, 64, 32, 64),
rgb(205, 64, 32, 56),
rgb(206, 64, 32, 48),
rgb(207, 64, 32, 40),
rgb(208, 64, 32, 32),
rgb(209, 64, 40, 32),
rgb(210, 64, 48, 32),
rgb(211, 64, 56, 32),
rgb(212, 64, 64, 32),
rgb(213, 56, 64, 32),
rgb(214, 48, 64, 32),
rgb(215, 40, 64, 32),
rgb(216, 32, 64, 32),
rgb(217, 32, 64, 40),
rgb(218, 32, 64, 48),
rgb(219, 32, 64, 56),
rgb(220, 32, 64, 64),
rgb(221, 32, 56, 64),
rgb(222, 32, 48, 64),
rgb(223, 32, 40, 64),
rgb(224, 44, 44, 64),
rgb(225, 48, 44, 64),
rgb(226, 52, 44, 64),
rgb(227, 60, 44, 64),
rgb(228, 64, 44, 64),
rgb(229, 64, 44, 60),
rgb(230, 64, 44, 52),
rgb(231, 64, 44, 48),
rgb(232, 64, 44, 44),
rgb(233, 64, 48, 44),
rgb(234, 64, 52, 44),
rgb(235, 64, 60, 44),
rgb(236, 64, 64, 44),
rgb(237, 60, 64, 44),
rgb(238, 52, 64, 44),
rgb(239, 48, 64, 44),
rgb(240, 44, 64, 44),
rgb(241, 44, 64, 48),
rgb(242, 44, 64, 52),
rgb(243, 44, 64, 60),
rgb(244, 44, 64, 64),
rgb(245, 44, 60, 64),
rgb(246, 44, 52, 64),
rgb(247, 44, 48, 64),
rgb(248, 0, 0, 0),
rgb(249, 0, 0, 0),
rgb(250, 0, 0, 0),
rgb(251, 0, 0, 0),
rgb(252, 0, 0, 0),
rgb(253, 0, 0, 0),
rgb(254, 0, 0, 0),
rgb(255, 0, 0, 0)
};