Сделал новую раскраску игры. Данные первого процессора оставил со стандартными цветами. А для работы с двумя процессорами выбрал такие цвета, чтобы менять данные только во втором процессоре. Палитру взял свою первую 16-ти цветную. Стандартные 4 цвета получаются, когда данные у двух процессоров одинаковые.
Т.е. при черном - это 0000, синем - 0101, зеленом - 1010 и красном - 1111. Она у меня такая:
Код:
mk_spalette:process (spalindx)
begin
	case spalindx is
		when x"00" => spalette <= x"000000"; --- черный
		when x"01" => spalette <= x"555555"; --- темносерый
		when x"02" => spalette <= x"AAAAAA"; --- светлосерый
		when x"03" => spalette <= x"FFFFFF"; --- белый
		when x"04" => spalette <= x"00007F"; --- темносиний
		when x"05" => spalette <= x"0000FF"; --- яркосиний
		when x"06" => spalette <= x"00FFFF"; --- циановый
		when x"07" => spalette <= x"FF00FF"; --- пурпурный
		when x"08" => spalette <= x"007F00"; --- темнозеленый
		when x"09" => spalette <= x"007FFF"; --- голубой
		when x"0A" => spalette <= x"00FF00"; --- яркозеленый
		when x"0B" => spalette <= x"7F3F00"; --- коричневый
		when x"0C" => spalette <= x"7F0000"; --- темнокрасный
		when x"0D" => spalette <= x"7F00FF"; --- фиолетовый
		when x"0E" => spalette <= x"FFFF00"; --- желтый
		when x"0F" => spalette <= x"FF0000"; --- яркокрасный
...
Где старшие 4 разряда индекса - выбор палитры. 3 и 2 разряды - цвет от первого процессора, а 1 и 0 разряды - цвет от второго процессора. 24 разряда цвета палитры имеют формат RGB888.
Спрайты раскрасил следующим образом:
floor1.bmp
А вот как это выглядит на экране монитора: