Index: common/a8core/atari5200core.vhd
===================================================================
--- common/a8core/atari5200core.vhd	(revision 243)
+++ common/a8core/atari5200core.vhd	(revision 244)
@@ -20,7 +20,7 @@
 	(
 		cycle_length : integer := 16; -- or 32...
 		video_bits : integer := 8;
-		palette : integer :=1; -- 0:gtia colour on VIDEO_B, 1:altirra, 2:laoo -- TODO NTSC
+		palette : integer :=0; -- 0:gtia colour on VIDEO_B, 1:on
 		low_memory : integer := 0 -- 0:8MB memory map, 1:1MB memory map
 	);
 	PORT
@@ -439,15 +439,6 @@
 		 DATA_OUT => GTIA_DO);
 
 	-- colour palette
---	Color             Value         Color             Value
---Black           0,      0	Medium blue     8,    128
---Rust            1,     16       Dark blue       9,    144
---Red-orange      2,     32       Blue-grey      10,    160
---Dark orange     3,     48       Olive green    11,    176
---Red             4,     64       Medium green   12,    192
---Dk lavender     5,     80       Dark green     13,    208
---Cobalt blue     6,     96       Orange-green   14,    224
---Ultramarine     7,    112       Orange         15,    240
 
 gen_palette_none : if palette=0 generate
 	VIDEO_B_WIDE <= COLOUR;
@@ -455,16 +446,11 @@
 	VIDEO_G_WIDE <= (others => '0');
 end generate;
 
-gen_palette_altirra : if palette=1 generate
-	palette1 : entity work.gtia_palette(altirra)
-		port map (ATARI_COLOUR=>COLOUR, R_next=>VIDEO_R_WIDE, G_next=>VIDEO_G_WIDE, B_next=>VIDEO_B_WIDE);
+gen_palette_on : if palette=1 generate
+	palette4 : entity work.gtia_palette
+		port map (PAL=>'0', ATARI_COLOUR=>COLOUR, R_next=>VIDEO_R_WIDE, G_next=>VIDEO_G_WIDE, B_next=>VIDEO_B_WIDE);		
 end generate;
 
-gen_palette_laoo : if palette=2 generate
-	palette2 : entity work.gtia_palette(laoo)
-		port map (ATARI_COLOUR=>COLOUR, R_next=>VIDEO_R_WIDE, G_next=>VIDEO_G_WIDE, B_next=>VIDEO_B_WIDE);		
-end generate;
-
 VIDEO_R(video_bits-1 downto 0) <= VIDEO_R_WIDE(7 downto 8-video_bits);
 VIDEO_G(video_bits-1 downto 0) <= VIDEO_G_WIDE(7 downto 8-video_bits);
 VIDEO_B(video_bits-1 downto 0) <= VIDEO_B_WIDE(7 downto 8-video_bits);
Index: common/a8core/atari5200core_simplesdram.vhd
===================================================================
--- common/a8core/atari5200core_simplesdram.vhd	(revision 243)
+++ common/a8core/atari5200core_simplesdram.vhd	(revision 244)
@@ -119,11 +119,12 @@
 SIGNAL CONSOL_OUT : STD_LOGIC_VECTOR(3 downto 0);
 
 -- POTS
-SIGNAL ENABLE_179 : STD_LOGIC;
-SIGNAL POT_COUNT : STD_LOGIC;
 SIGNAL POT_RESET : STD_LOGIC;
 SIGNAL POT_IN : STD_LOGIC_VECTOR(7 downto 0);
 
+constant min_lines : integer := 15;
+constant max_lines : integer := 210;
+
 BEGIN
 
 -- triggers
@@ -131,17 +132,13 @@
 TRIG(1) <= JOY2_BUTTON;
 
 -- pots 
--- TODO linear or not?
-enable_179_clock_div : entity work.enable_divider
-	generic map (COUNT=>cycle_length)
-	port map(clk=>clk,reset_n=>reset_n,enable_in=>'1',enable_out=>enable_179);
-
--- 114K to 386k (51 to 172) 121 lines.  i.e. 121*114 cycles/256 values = ~54
-pot_clock_div : entity work.enable_divider
-	generic map (COUNT=>80)
-	port map(clk=>clk,reset_n=>reset_n,enable_in=>enable_179,enable_out=>pot_count);
-
 pot0 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length,
+		min_lines=>min_lines,
+		max_lines=>max_lines
+	)
 	PORT MAP
 	(
 		CLK => CLK,
@@ -148,11 +145,16 @@
 		RESET_N => RESET_N,
 		ENABLED => CONSOL_OUT(2),
 		POT_RESET => POT_RESET,
-		COUNT_ENABLE => POT_COUNT,
 		POS => JOY1_X,
 		POT_HIGH => POT_IN(0)
 	);
 pot1 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length,
+		min_lines=>min_lines,
+		max_lines=>max_lines
+	)
 	PORT MAP
 	(
 		CLK => CLK,
@@ -159,11 +161,16 @@
 		RESET_N => RESET_N,
 		ENABLED => CONSOL_OUT(2),
 		POT_RESET => POT_RESET,
-		COUNT_ENABLE => POT_COUNT,
 		POS => JOY1_Y,
 		POT_HIGH => POT_IN(1)
 	);
 pot2 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length,
+		min_lines=>min_lines,
+		max_lines=>max_lines
+	)
 	PORT MAP
 	(
 		CLK => CLK,
@@ -170,11 +177,16 @@
 		RESET_N => RESET_N,
 		ENABLED => CONSOL_OUT(2),
 		POT_RESET => POT_RESET,
-		COUNT_ENABLE => POT_COUNT,
 		POS => JOY2_X,
 		POT_HIGH => POT_IN(2)
 	);
 pot3 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length,
+		min_lines=>min_lines,
+		max_lines=>max_lines
+	)
 	PORT MAP
 	(
 		CLK => CLK,
@@ -181,7 +193,6 @@
 		RESET_N => RESET_N,
 		ENABLED => CONSOL_OUT(2),
 		POT_RESET => POT_RESET,
-		COUNT_ENABLE => POT_COUNT,
 		POS => JOY2_Y,
 		POT_HIGH => POT_IN(3)
 	);
Index: common/a8core/atari800core.vhd
===================================================================
--- common/a8core/atari800core.vhd	(revision 243)
+++ common/a8core/atari800core.vhd	(revision 244)
@@ -20,7 +20,7 @@
 	(
 		cycle_length : integer := 16; -- or 32...
 		video_bits : integer := 8;
-		palette : integer :=1; -- 0:gtia colour on VIDEO_B, 1:altirra, 2:laoo
+		palette : integer :=0; -- 0:gtia colour on VIDEO_B, 1:on
 		low_memory : integer := 0 -- 0:8MB memory map, 1:1MB memory map
 	);
 	PORT
@@ -546,15 +546,6 @@
 GTIA_SOUND <= CONSOL_OUT(3);
 
 	-- colour palette
---	Color             Value         Color             Value
---Black           0,      0	Medium blue     8,    128
---Rust            1,     16       Dark blue       9,    144
---Red-orange      2,     32       Blue-grey      10,    160
---Dark orange     3,     48       Olive green    11,    176
---Red             4,     64       Medium green   12,    192
---Dk lavender     5,     80       Dark green     13,    208
---Cobalt blue     6,     96       Orange-green   14,    224
---Ultramarine     7,    112       Orange         15,    240
 
 gen_palette_none : if palette=0 generate
 	VIDEO_B_WIDE <= COLOUR;
@@ -562,16 +553,11 @@
 	VIDEO_G_WIDE <= (others => '0');
 end generate;
 
-gen_palette_altirra : if palette=1 generate
-	palette1 : entity work.gtia_palette(altirra)
-		port map (ATARI_COLOUR=>COLOUR, R_next=>VIDEO_R_WIDE, G_next=>VIDEO_G_WIDE, B_next=>VIDEO_B_WIDE);
+gen_palette_on : if palette=1 generate
+	palette4 : entity work.gtia_palette
+		port map (PAL=>PAL, ATARI_COLOUR=>COLOUR, R_next=>VIDEO_R_WIDE, G_next=>VIDEO_G_WIDE, B_next=>VIDEO_B_WIDE);		
 end generate;
 
-gen_palette_laoo : if palette=2 generate
-	palette2 : entity work.gtia_palette(laoo)
-		port map (ATARI_COLOUR=>COLOUR, R_next=>VIDEO_R_WIDE, G_next=>VIDEO_G_WIDE, B_next=>VIDEO_B_WIDE);		
-end generate;
-
 VIDEO_R(video_bits-1 downto 0) <= VIDEO_R_WIDE(7 downto 8-video_bits);
 VIDEO_G(video_bits-1 downto 0) <= VIDEO_G_WIDE(7 downto 8-video_bits);
 VIDEO_B(video_bits-1 downto 0) <= VIDEO_B_WIDE(7 downto 8-video_bits);
Index: common/a8core/atari800core_simple_sdram.vhd
===================================================================
--- common/a8core/atari800core_simple_sdram.vhd	(revision 243)
+++ common/a8core/atari800core_simple_sdram.vhd	(revision 244)
@@ -62,6 +62,10 @@
 		-- JOYSTICK
 		JOY1_n : IN std_logic_vector(4 downto 0); -- FRLDU, 0=pressed
 		JOY2_n : IN std_logic_vector(4 downto 0); -- FRLDU, 0=pressed
+		PADDLE0 : IN signed(7 downto 0) := to_signed(-128,8);
+		PADDLE1 : IN signed(7 downto 0) := to_signed(-128,8);
+		PADDLE2 : IN signed(7 downto 0) := to_signed(-128,8);
+		PADDLE3 : IN signed(7 downto 0) := to_signed(-128,8);
 
 		-- Pokey keyboard matrix
 		-- Standard component available to connect this to PS2
@@ -188,6 +192,10 @@
 	SIGNAL USE_SDRAM : STD_LOGIC;
 	SIGNAL ROM_IN_RAM : STD_LOGIC;
 
+	-- POTS
+	SIGNAL POT_RESET : STD_LOGIC;
+	SIGNAL POT_IN : STD_LOGIC_VECTOR(7 downto 0);
+
 BEGIN
 
 -- PIA mapping
@@ -212,6 +220,65 @@
 -- Since we're not exposing PBI, expose a few key parts needed for SDRAM
 SDRAM_DI <= PBI_WRITE_DATA;
 
+-- Paddles!
+pot0 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length
+	)
+	PORT MAP
+	(
+		CLK => CLK,
+		RESET_N => RESET_N,
+		ENABLED => '1',
+		POT_RESET => POT_RESET,
+		POS => PADDLE0,
+		POT_HIGH => POT_IN(0)
+	);
+pot1 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length
+	)
+	PORT MAP
+	(
+		CLK => CLK,
+		RESET_N => RESET_N,
+		ENABLED => '1',
+		POT_RESET => POT_RESET,
+		POS => PADDLE1,
+		POT_HIGH => POT_IN(1)
+	);
+pot2 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length
+	)
+	PORT MAP
+	(
+		CLK => CLK,
+		RESET_N => RESET_N,
+		ENABLED => '1',
+		POT_RESET => POT_RESET,
+		POS => PADDLE2,
+		POT_HIGH => POT_IN(2)
+	);
+pot3 : entity work.pot_from_signed
+	GENERIC MAP
+	(
+		cycle_length=>cycle_length
+	)
+	PORT MAP
+	(
+		CLK => CLK,
+		RESET_N => RESET_N,
+		ENABLED => '1',
+		POT_RESET => POT_RESET,
+		POS => PADDLE3,
+		POT_HIGH => POT_IN(3)
+	);
+POT_IN(7 downto 4) <= (others=>'0');
+
 -- Internal rom/ram
 internalromram1 : entity work.internalromram
 	GENERIC MAP
@@ -283,8 +350,8 @@
 		KEYBOARD_RESPONSE => KEYBOARD_RESPONSE,
 		KEYBOARD_SCAN => KEYBOARD_SCAN,
 
-		POT_IN => "00000000",
-		POT_RESET => open,
+		POT_IN => POT_IN,
+		POT_RESET => POT_RESET,
 		
 		-- PBI
 		PBI_ADDR => open,
Index: common/a8core/gtia_palette.vhdl
===================================================================
--- common/a8core/gtia_palette.vhdl	(revision 243)
+++ common/a8core/gtia_palette.vhdl	(revision 244)
@@ -13,6 +13,7 @@
 PORT 
 ( 
 	ATARI_COLOUR : IN STD_LOGIC_VECTOR(7 downto 0);
+	PAL : IN STD_LOGIC;
 	
 	R_next : OUT STD_LOGIC_VECTOR(7 downto 0);
 	G_next : OUT STD_LOGIC_VECTOR(7 downto 0);
@@ -20,8 +21,9 @@
 );
 END gtia_palette;
 
-ARCHITECTURE altirra OF gtia_palette IS
+ARCHITECTURE vhdl OF gtia_palette IS
 begin
+		--altirra_pal_default.pal
 		process(atari_colour)
 		begin
 			case atari_colour is
@@ -1050,1047 +1052,1039 @@
 					G_next <= X"f3";
 					B_next <= X"9a";
 				when others =>
-					-- nop
+					--nop
 			end case;
-			
-		end process;
-		
-end altirra;
 
-
-ARCHITECTURE laoo OF gtia_palette IS
-begin
-		process(atari_colour)
-		begin
+		if (pal = '0') then
+		--altirra_ntsc_default.pal
 			case atari_colour is
-					when X"00" =>
-						R_next <= X"00";
-						G_next <= X"00";
-						B_next <= X"00";
-					when X"01" =>
-						R_next <= X"0e";
-						G_next <= X"0d";
-						B_next <= X"0e";
-					when X"02" =>
-						R_next <= X"1d";
-						G_next <= X"1d";
-						B_next <= X"1d";
-					when X"03" =>
-						R_next <= X"2e";
-						G_next <= X"2d";
-						B_next <= X"2e";
-					when X"04" =>
-						R_next <= X"3e";
-						G_next <= X"3d";
-						B_next <= X"3e";
-					when X"05" =>
-						R_next <= X"4f";
-						G_next <= X"4e";
-						B_next <= X"4f";
-					when X"06" =>
-						R_next <= X"5f";
-						G_next <= X"5e";
-						B_next <= X"5f";
-					when X"07" =>
-						R_next <= X"70";
-						G_next <= X"6f";
-						B_next <= X"6f";
-					when X"08" =>
-						R_next <= X"7a";
-						G_next <= X"7a";
-						B_next <= X"79";
-					when X"09" =>
-						R_next <= X"8b";
-						G_next <= X"8a";
-						B_next <= X"8b";
-					when X"0a" =>
-						R_next <= X"9c";
-						G_next <= X"9b";
-						B_next <= X"9b";
-					when X"0b" =>
-						R_next <= X"ad";
-						G_next <= X"ac";
-						B_next <= X"ac";
-					when X"0c" =>
-						R_next <= X"bc";
-						G_next <= X"bb";
-						B_next <= X"bb";
-					when X"0d" =>
-						R_next <= X"cd";
-						G_next <= X"cc";
-						B_next <= X"cd";
-					when X"0e" =>
-						R_next <= X"dc";
-						G_next <= X"db";
-						B_next <= X"dc";
-					when X"0f" =>
-						R_next <= X"ec";
-						G_next <= X"ec";
-						B_next <= X"ec";
-					when X"10" =>
-						R_next <= X"35";
-						G_next <= X"00";
-						B_next <= X"00";
-					when X"11" =>
-						R_next <= X"40";
-						G_next <= X"05";
-						B_next <= X"00";
-					when X"12" =>
-						R_next <= X"4f";
-						G_next <= X"14";
-						B_next <= X"00";
-					when X"13" =>
-						R_next <= X"5f";
-						G_next <= X"25";
-						B_next <= X"00";
-					when X"14" =>
-						R_next <= X"6e";
-						G_next <= X"34";
-						B_next <= X"00";
-					when X"15" =>
-						R_next <= X"7f";
-						G_next <= X"45";
-						B_next <= X"03";
-					when X"16" =>
-						R_next <= X"8e";
-						G_next <= X"55";
-						B_next <= X"13";
-					when X"17" =>
-						R_next <= X"9f";
-						G_next <= X"66";
-						B_next <= X"23";
-					when X"18" =>
-						R_next <= X"a9";
-						G_next <= X"71";
-						B_next <= X"2d";
-					when X"19" =>
-						R_next <= X"ba";
-						G_next <= X"82";
-						B_next <= X"40";
-					when X"1a" =>
-						R_next <= X"ca";
-						G_next <= X"92";
-						B_next <= X"50";
-					when X"1b" =>
-						R_next <= X"db";
-						G_next <= X"a3";
-						B_next <= X"61";
-					when X"1c" =>
-						R_next <= X"ea";
-						G_next <= X"b2";
-						B_next <= X"70";
-					when X"1d" =>
-						R_next <= X"fa";
-						G_next <= X"c3";
-						B_next <= X"82";
-					when X"1e" =>
-						R_next <= X"fe";
-						G_next <= X"d2";
-						B_next <= X"91";
-					when X"1f" =>
-						R_next <= X"ff";
-						G_next <= X"e3";
-						B_next <= X"a1";
-					when X"20" =>
-						R_next <= X"3f";
-						G_next <= X"00";
-						B_next <= X"00";
-					when X"21" =>
-						R_next <= X"4b";
-						G_next <= X"00";
-						B_next <= X"00";
-					when X"22" =>
-						R_next <= X"59";
-						G_next <= X"09";
-						B_next <= X"00";
-					when X"23" =>
-						R_next <= X"69";
-						G_next <= X"19";
-						B_next <= X"03";
-					when X"24" =>
-						R_next <= X"78";
-						G_next <= X"29";
-						B_next <= X"12";
-					when X"25" =>
-						R_next <= X"88";
-						G_next <= X"3a";
-						B_next <= X"23";
-					when X"26" =>
-						R_next <= X"98";
-						G_next <= X"4a";
-						B_next <= X"34";
-					when X"27" =>
-						R_next <= X"a9";
-						G_next <= X"5b";
-						B_next <= X"45";
-					when X"28" =>
-						R_next <= X"b3";
-						G_next <= X"65";
-						B_next <= X"4f";
-					when X"29" =>
-						R_next <= X"c4";
-						G_next <= X"76";
-						B_next <= X"61";
-					when X"2a" =>
-						R_next <= X"d4";
-						G_next <= X"87";
-						B_next <= X"72";
-					when X"2b" =>
-						R_next <= X"e5";
-						G_next <= X"98";
-						B_next <= X"83";
-					when X"2c" =>
-						R_next <= X"f4";
-						G_next <= X"a7";
-						B_next <= X"92";
-					when X"2d" =>
-						R_next <= X"fd";
-						G_next <= X"b8";
-						B_next <= X"a3";
-					when X"2e" =>
-						R_next <= X"ff";
-						G_next <= X"c7";
-						B_next <= X"b3";
-					when X"2f" =>
-						R_next <= X"ff";
-						G_next <= X"d7";
-						B_next <= X"c2";
-					when X"30" =>
-						R_next <= X"3d";
-						G_next <= X"00";
-						B_next <= X"00";
-					when X"31" =>
-						R_next <= X"49";
-						G_next <= X"00";
-						B_next <= X"00";
-					when X"32" =>
-						R_next <= X"57";
-						G_next <= X"05";
-						B_next <= X"0b";
-					when X"33" =>
-						R_next <= X"68";
-						G_next <= X"15";
-						B_next <= X"1b";
-					when X"34" =>
-						R_next <= X"77";
-						G_next <= X"25";
-						B_next <= X"2a";
-					when X"35" =>
-						R_next <= X"88";
-						G_next <= X"36";
-						B_next <= X"3c";
-					when X"36" =>
-						R_next <= X"98";
-						G_next <= X"46";
-						B_next <= X"4c";
-					when X"37" =>
-						R_next <= X"a8";
-						G_next <= X"57";
-						B_next <= X"5d";
-					when X"38" =>
-						R_next <= X"b2";
-						G_next <= X"61";
-						B_next <= X"67";
-					when X"39" =>
-						R_next <= X"c3";
-						G_next <= X"72";
-						B_next <= X"79";
-					when X"3a" =>
-						R_next <= X"d3";
-						G_next <= X"83";
-						B_next <= X"89";
-					when X"3b" =>
-						R_next <= X"e4";
-						G_next <= X"94";
-						B_next <= X"9a";
-					when X"3c" =>
-						R_next <= X"f3";
-						G_next <= X"a3";
-						B_next <= X"a9";
-					when X"3d" =>
-						R_next <= X"fd";
-						G_next <= X"b4";
-						B_next <= X"ba";
-					when X"3e" =>
-						R_next <= X"ff";
-						G_next <= X"c4";
-						B_next <= X"ca";
-					when X"3f" =>
-						R_next <= X"ff";
-						G_next <= X"d4";
-						B_next <= X"d9";
-					when X"40" =>
-						R_next <= X"38";
-						G_next <= X"00";
-						B_next <= X"27";
-					when X"41" =>
-						R_next <= X"42";
-						G_next <= X"00";
-						B_next <= X"32";
-					when X"42" =>
-						R_next <= X"51";
-						G_next <= X"01";
-						B_next <= X"40";
-					when X"43" =>
-						R_next <= X"61";
-						G_next <= X"0e";
-						B_next <= X"50";
-					when X"44" =>
-						R_next <= X"70";
-						G_next <= X"1e";
-						B_next <= X"5f";
-					when X"45" =>
-						R_next <= X"81";
-						G_next <= X"2f";
-						B_next <= X"70";
-					when X"46" =>
-						R_next <= X"90";
-						G_next <= X"3f";
-						B_next <= X"81";
-					when X"47" =>
-						R_next <= X"a0";
-						G_next <= X"51";
-						B_next <= X"90";
-					when X"48" =>
-						R_next <= X"ab";
-						G_next <= X"5b";
-						B_next <= X"9a";
-					when X"49" =>
-						R_next <= X"bc";
-						G_next <= X"6c";
-						B_next <= X"ac";
-					when X"4a" =>
-						R_next <= X"cc";
-						G_next <= X"7c";
-						B_next <= X"bc";
-					when X"4b" =>
-						R_next <= X"dc";
-						G_next <= X"8d";
-						B_next <= X"cd";
-					when X"4c" =>
-						R_next <= X"ec";
-						G_next <= X"9d";
-						B_next <= X"dc";
-					when X"4d" =>
-						R_next <= X"fa";
-						G_next <= X"ae";
-						B_next <= X"ed";
-					when X"4e" =>
-						R_next <= X"fe";
-						G_next <= X"bd";
-						B_next <= X"fa";
-					when X"4f" =>
-						R_next <= X"ff";
-						G_next <= X"cd";
-						B_next <= X"fe";
-					when X"50" =>
-						R_next <= X"2c";
-						G_next <= X"00";
-						B_next <= X"46";
-					when X"51" =>
-						R_next <= X"37";
-						G_next <= X"00";
-						B_next <= X"50";
-					when X"52" =>
-						R_next <= X"46";
-						G_next <= X"01";
-						B_next <= X"5f";
-					when X"53" =>
-						R_next <= X"55";
-						G_next <= X"0e";
-						B_next <= X"6e";
-					when X"54" =>
-						R_next <= X"65";
-						G_next <= X"1e";
-						B_next <= X"7d";
-					when X"55" =>
-						R_next <= X"75";
-						G_next <= X"2f";
-						B_next <= X"8e";
-					when X"56" =>
-						R_next <= X"85";
-						G_next <= X"3f";
-						B_next <= X"9f";
-					when X"57" =>
-						R_next <= X"95";
-						G_next <= X"50";
-						B_next <= X"ae";
-					when X"58" =>
-						R_next <= X"a0";
-						G_next <= X"5b";
-						B_next <= X"b8";
-					when X"59" =>
-						R_next <= X"b1";
-						G_next <= X"6c";
-						B_next <= X"ca";
-					when X"5a" =>
-						R_next <= X"c1";
-						G_next <= X"7c";
-						B_next <= X"da";
-					when X"5b" =>
-						R_next <= X"d2";
-						G_next <= X"8d";
-						B_next <= X"eb";
-					when X"5c" =>
-						R_next <= X"e1";
-						G_next <= X"9d";
-						B_next <= X"f8";
-					when X"5d" =>
-						R_next <= X"f2";
-						G_next <= X"ae";
-						B_next <= X"fe";
-					when X"5e" =>
-						R_next <= X"fc";
-						G_next <= X"bd";
-						B_next <= X"ff";
-					when X"5f" =>
-						R_next <= X"fe";
-						G_next <= X"cd";
-						B_next <= X"ff";
-					when X"60" =>
-						R_next <= X"19";
-						G_next <= X"00";
-						B_next <= X"5e";
-					when X"61" =>
-						R_next <= X"24";
-						G_next <= X"00";
-						B_next <= X"67";
-					when X"62" =>
-						R_next <= X"34";
-						G_next <= X"03";
-						B_next <= X"76";
-					when X"63" =>
-						R_next <= X"44";
-						G_next <= X"13";
-						B_next <= X"85";
-					when X"64" =>
-						R_next <= X"53";
-						G_next <= X"22";
-						B_next <= X"94";
-					when X"65" =>
-						R_next <= X"64";
-						G_next <= X"33";
-						B_next <= X"a5";
-					when X"66" =>
-						R_next <= X"74";
-						G_next <= X"43";
-						B_next <= X"b5";
-					when X"67" =>
-						R_next <= X"85";
-						G_next <= X"55";
-						B_next <= X"c4";
-					when X"68" =>
-						R_next <= X"8f";
-						G_next <= X"5f";
-						B_next <= X"ce";
-					when X"69" =>
-						R_next <= X"a0";
-						G_next <= X"70";
-						B_next <= X"e0";
-					when X"6a" =>
-						R_next <= X"b0";
-						G_next <= X"81";
-						B_next <= X"f0";
-					when X"6b" =>
-						R_next <= X"c1";
-						G_next <= X"92";
-						B_next <= X"fc";
-					when X"6c" =>
-						R_next <= X"d0";
-						G_next <= X"a1";
-						B_next <= X"fe";
-					when X"6d" =>
-						R_next <= X"e1";
-						G_next <= X"b2";
-						B_next <= X"ff";
-					when X"6e" =>
-						R_next <= X"f0";
-						G_next <= X"c2";
-						B_next <= X"ff";
-					when X"6f" =>
-						R_next <= X"fc";
-						G_next <= X"d2";
-						B_next <= X"ff";
-					when X"70" =>
-						R_next <= X"00";
-						G_next <= X"00";
-						B_next <= X"5c";
-					when X"71" =>
-						R_next <= X"00";
-						G_next <= X"09";
-						B_next <= X"66";
-					when X"72" =>
-						R_next <= X"09";
-						G_next <= X"18";
-						B_next <= X"75";
-					when X"73" =>
-						R_next <= X"1a";
-						G_next <= X"29";
-						B_next <= X"84";
-					when X"74" =>
-						R_next <= X"29";
-						G_next <= X"38";
-						B_next <= X"93";
-					when X"75" =>
-						R_next <= X"3a";
-						G_next <= X"49";
-						B_next <= X"a4";
-					when X"76" =>
-						R_next <= X"4a";
-						G_next <= X"59";
-						B_next <= X"b4";
-					when X"77" =>
-						R_next <= X"5c";
-						G_next <= X"6a";
-						B_next <= X"c3";
-					when X"78" =>
-						R_next <= X"66";
-						G_next <= X"74";
-						B_next <= X"cd";
-					when X"79" =>
-						R_next <= X"77";
-						G_next <= X"85";
-						B_next <= X"df";
-					when X"7a" =>
-						R_next <= X"87";
-						G_next <= X"96";
-						B_next <= X"ef";
-					when X"7b" =>
-						R_next <= X"98";
-						G_next <= X"a7";
-						B_next <= X"fc";
-					when X"7c" =>
-						R_next <= X"a8";
-						G_next <= X"b6";
-						B_next <= X"fe";
-					when X"7d" =>
-						R_next <= X"b9";
-						G_next <= X"c7";
-						B_next <= X"ff";
-					when X"7e" =>
-						R_next <= X"c8";
-						G_next <= X"d6";
-						B_next <= X"ff";
-					when X"7f" =>
-						R_next <= X"d8";
-						G_next <= X"e7";
-						B_next <= X"ff";
-					when X"80" =>
-						R_next <= X"00";
-						G_next <= X"0b";
-						B_next <= X"45";
-					when X"81" =>
-						R_next <= X"00";
-						G_next <= X"16";
-						B_next <= X"4f";
-					when X"82" =>
-						R_next <= X"00";
-						G_next <= X"25";
-						B_next <= X"5d";
-					when X"83" =>
-						R_next <= X"09";
-						G_next <= X"36";
-						B_next <= X"6d";
-					when X"84" =>
-						R_next <= X"18";
-						G_next <= X"45";
-						B_next <= X"7c";
-					when X"85" =>
-						R_next <= X"29";
-						G_next <= X"56";
-						B_next <= X"8d";
-					when X"86" =>
-						R_next <= X"39";
-						G_next <= X"66";
-						B_next <= X"9d";
-					when X"87" =>
-						R_next <= X"4b";
-						G_next <= X"77";
-						B_next <= X"ac";
-					when X"88" =>
-						R_next <= X"56";
-						G_next <= X"81";
-						B_next <= X"b6";
-					when X"89" =>
-						R_next <= X"67";
-						G_next <= X"92";
-						B_next <= X"c8";
-					when X"8a" =>
-						R_next <= X"77";
-						G_next <= X"a2";
-						B_next <= X"d9";
-					when X"8b" =>
-						R_next <= X"88";
-						G_next <= X"b3";
-						B_next <= X"e9";
-					when X"8c" =>
-						R_next <= X"98";
-						G_next <= X"c3";
-						B_next <= X"f7";
-					when X"8d" =>
-						R_next <= X"a9";
-						G_next <= X"d3";
-						B_next <= X"fe";
-					when X"8e" =>
-						R_next <= X"b8";
-						G_next <= X"e3";
-						B_next <= X"ff";
-					when X"8f" =>
-						R_next <= X"c8";
-						G_next <= X"f3";
-						B_next <= X"ff";
-					when X"90" =>
-						R_next <= X"00";
-						G_next <= X"16";
-						B_next <= X"25";
-					when X"91" =>
-						R_next <= X"00";
-						G_next <= X"22";
-						B_next <= X"30";
-					when X"92" =>
-						R_next <= X"00";
-						G_next <= X"31";
-						B_next <= X"3f";
-					when X"93" =>
-						R_next <= X"01";
-						G_next <= X"42";
-						B_next <= X"4f";
-					when X"94" =>
-						R_next <= X"0c";
-						G_next <= X"51";
-						B_next <= X"5e";
-					when X"95" =>
-						R_next <= X"1e";
-						G_next <= X"62";
-						B_next <= X"6f";
-					when X"96" =>
-						R_next <= X"2e";
-						G_next <= X"72";
-						B_next <= X"80";
-					when X"97" =>
-						R_next <= X"40";
-						G_next <= X"82";
-						B_next <= X"8f";
-					when X"98" =>
-						R_next <= X"4a";
-						G_next <= X"8d";
-						B_next <= X"99";
-					when X"99" =>
-						R_next <= X"5c";
-						G_next <= X"9d";
-						B_next <= X"ab";
-					when X"9a" =>
-						R_next <= X"6c";
-						G_next <= X"ae";
-						B_next <= X"bc";
-					when X"9b" =>
-						R_next <= X"7e";
-						G_next <= X"be";
-						B_next <= X"cc";
-					when X"9c" =>
-						R_next <= X"8d";
-						G_next <= X"ce";
-						B_next <= X"db";
-					when X"9d" =>
-						R_next <= X"9e";
-						G_next <= X"de";
-						B_next <= X"ed";
-					when X"9e" =>
-						R_next <= X"ad";
-						G_next <= X"ee";
-						B_next <= X"fa";
-					when X"9f" =>
-						R_next <= X"bd";
-						G_next <= X"fc";
-						B_next <= X"fe";
-					when X"a0" =>
-						R_next <= X"00";
-						G_next <= X"24";
-						B_next <= X"00";
-					when X"a1" =>
-						R_next <= X"00";
-						G_next <= X"2f";
-						B_next <= X"00";
-					when X"a2" =>
-						R_next <= X"00";
-						G_next <= X"3e";
-						B_next <= X"0a";
-					when X"a3" =>
-						R_next <= X"00";
-						G_next <= X"4f";
-						B_next <= X"1a";
-					when X"a4" =>
-						R_next <= X"08";
-						G_next <= X"5e";
-						B_next <= X"29";
-					when X"a5" =>
-						R_next <= X"18";
-						G_next <= X"6f";
-						B_next <= X"3b";
-					when X"a6" =>
-						R_next <= X"28";
-						G_next <= X"7f";
-						B_next <= X"4b";
-					when X"a7" =>
-						R_next <= X"3a";
-						G_next <= X"8f";
-						B_next <= X"5c";
-					when X"a8" =>
-						R_next <= X"44";
-						G_next <= X"9a";
-						B_next <= X"65";
-					when X"a9" =>
-						R_next <= X"55";
-						G_next <= X"ab";
-						B_next <= X"78";
-					when X"aa" =>
-						R_next <= X"65";
-						G_next <= X"bb";
-						B_next <= X"88";
-					when X"ab" =>
-						R_next <= X"77";
-						G_next <= X"cc";
-						B_next <= X"99";
-					when X"ac" =>
-						R_next <= X"86";
-						G_next <= X"db";
-						B_next <= X"a8";
-					when X"ad" =>
-						R_next <= X"97";
-						G_next <= X"ec";
-						B_next <= X"ba";
-					when X"ae" =>
-						R_next <= X"a6";
-						G_next <= X"fa";
-						B_next <= X"c9";
-					when X"af" =>
-						R_next <= X"b7";
-						G_next <= X"fe";
-						B_next <= X"d9";
-					when X"b0" =>
-						R_next <= X"00";
-						G_next <= X"2a";
-						B_next <= X"00";
-					when X"b1" =>
-						R_next <= X"00";
-						G_next <= X"37";
-						B_next <= X"00";
-					when X"b2" =>
-						R_next <= X"00";
-						G_next <= X"46";
-						B_next <= X"00";
-					when X"b3" =>
-						R_next <= X"01";
-						G_next <= X"56";
-						B_next <= X"00";
-					when X"b4" =>
-						R_next <= X"0f";
-						G_next <= X"65";
-						B_next <= X"00";
-					when X"b5" =>
-						R_next <= X"20";
-						G_next <= X"76";
-						B_next <= X"03";
-					when X"b6" =>
-						R_next <= X"31";
-						G_next <= X"85";
-						B_next <= X"13";
-					when X"b7" =>
-						R_next <= X"42";
-						G_next <= X"96";
-						B_next <= X"24";
-					when X"b8" =>
-						R_next <= X"4c";
-						G_next <= X"a1";
-						B_next <= X"2d";
-					when X"b9" =>
-						R_next <= X"5d";
-						G_next <= X"b1";
-						B_next <= X"40";
-					when X"ba" =>
-						R_next <= X"6d";
-						G_next <= X"c1";
-						B_next <= X"51";
-					when X"bb" =>
-						R_next <= X"7f";
-						G_next <= X"d2";
-						B_next <= X"62";
-					when X"bc" =>
-						R_next <= X"8e";
-						G_next <= X"e2";
-						B_next <= X"71";
-					when X"bd" =>
-						R_next <= X"9f";
-						G_next <= X"f2";
-						B_next <= X"82";
-					when X"be" =>
-						R_next <= X"af";
-						G_next <= X"fd";
-						B_next <= X"92";
-					when X"bf" =>
-						R_next <= X"bf";
-						G_next <= X"ff";
-						B_next <= X"a1";
-					when X"c0" =>
-						R_next <= X"00";
-						G_next <= X"24";
-						B_next <= X"00";
-					when X"c1" =>
-						R_next <= X"00";
-						G_next <= X"31";
-						B_next <= X"00";
-					when X"c2" =>
-						R_next <= X"05";
-						G_next <= X"40";
-						B_next <= X"00";
-					when X"c3" =>
-						R_next <= X"16";
-						G_next <= X"50";
-						B_next <= X"00";
-					when X"c4" =>
-						R_next <= X"26";
-						G_next <= X"5f";
-						B_next <= X"00";
-					when X"c5" =>
-						R_next <= X"36";
-						G_next <= X"70";
-						B_next <= X"00";
-					when X"c6" =>
-						R_next <= X"47";
-						G_next <= X"80";
-						B_next <= X"00";
-					when X"c7" =>
-						R_next <= X"58";
-						G_next <= X"90";
-						B_next <= X"08";
-					when X"c8" =>
-						R_next <= X"62";
-						G_next <= X"9b";
-						B_next <= X"12";
-					when X"c9" =>
-						R_next <= X"73";
-						G_next <= X"ac";
-						B_next <= X"24";
-					when X"ca" =>
-						R_next <= X"84";
-						G_next <= X"bc";
-						B_next <= X"35";
-					when X"cb" =>
-						R_next <= X"95";
-						G_next <= X"cd";
-						B_next <= X"46";
-					when X"cc" =>
-						R_next <= X"a4";
-						G_next <= X"dc";
-						B_next <= X"55";
-					when X"cd" =>
-						R_next <= X"b5";
-						G_next <= X"ed";
-						B_next <= X"67";
-					when X"ce" =>
-						R_next <= X"c5";
-						G_next <= X"fb";
-						B_next <= X"77";
-					when X"cf" =>
-						R_next <= X"d5";
-						G_next <= X"ff";
-						B_next <= X"86";
-					when X"d0" =>
-						R_next <= X"02";
-						G_next <= X"18";
-						B_next <= X"00";
-					when X"d1" =>
-						R_next <= X"0f";
-						G_next <= X"25";
-						B_next <= X"00";
-					when X"d2" =>
-						R_next <= X"1f";
-						G_next <= X"34";
-						B_next <= X"00";
-					when X"d3" =>
-						R_next <= X"2f";
-						G_next <= X"45";
-						B_next <= X"00";
-					when X"d4" =>
-						R_next <= X"3f";
-						G_next <= X"54";
-						B_next <= X"00";
-					when X"d5" =>
-						R_next <= X"4f";
-						G_next <= X"65";
-						B_next <= X"00";
-					when X"d6" =>
-						R_next <= X"60";
-						G_next <= X"75";
-						B_next <= X"00";
-					when X"d7" =>
-						R_next <= X"70";
-						G_next <= X"86";
-						B_next <= X"01";
-					when X"d8" =>
-						R_next <= X"7b";
-						G_next <= X"90";
-						B_next <= X"0a";
-					when X"d9" =>
-						R_next <= X"8c";
-						G_next <= X"a1";
-						B_next <= X"1c";
-					when X"da" =>
-						R_next <= X"9c";
-						G_next <= X"b1";
-						B_next <= X"2c";
-					when X"db" =>
-						R_next <= X"ad";
-						G_next <= X"c2";
-						B_next <= X"3e";
-					when X"dc" =>
-						R_next <= X"bd";
-						G_next <= X"d1";
-						B_next <= X"4d";
-					when X"dd" =>
-						R_next <= X"cd";
-						G_next <= X"e2";
-						B_next <= X"5e";
-					when X"de" =>
-						R_next <= X"dd";
-						G_next <= X"f1";
-						B_next <= X"6e";
-					when X"df" =>
-						R_next <= X"ed";
-						G_next <= X"fd";
-						B_next <= X"7e";
-					when X"e0" =>
-						R_next <= X"1e";
-						G_next <= X"09";
-						B_next <= X"00";
-					when X"e1" =>
-						R_next <= X"2a";
-						G_next <= X"16";
-						B_next <= X"00";
-					when X"e2" =>
-						R_next <= X"39";
-						G_next <= X"25";
-						B_next <= X"00";
-					when X"e3" =>
-						R_next <= X"49";
-						G_next <= X"36";
-						B_next <= X"00";
-					when X"e4" =>
-						R_next <= X"58";
-						G_next <= X"45";
-						B_next <= X"00";
-					when X"e5" =>
-						R_next <= X"69";
-						G_next <= X"56";
-						B_next <= X"00";
-					when X"e6" =>
-						R_next <= X"79";
-						G_next <= X"66";
-						B_next <= X"00";
-					when X"e7" =>
-						R_next <= X"8a";
-						G_next <= X"77";
-						B_next <= X"08";
-					when X"e8" =>
-						R_next <= X"94";
-						G_next <= X"81";
-						B_next <= X"12";
-					when X"e9" =>
-						R_next <= X"a5";
-						G_next <= X"92";
-						B_next <= X"24";
-					when X"ea" =>
-						R_next <= X"b5";
-						G_next <= X"a3";
-						B_next <= X"35";
-					when X"eb" =>
-						R_next <= X"c6";
-						G_next <= X"b3";
-						B_next <= X"46";
-					when X"ec" =>
-						R_next <= X"d6";
-						G_next <= X"c3";
-						B_next <= X"55";
-					when X"ed" =>
-						R_next <= X"e6";
-						G_next <= X"d4";
-						B_next <= X"66";
-					when X"ee" =>
-						R_next <= X"f6";
-						G_next <= X"e3";
-						B_next <= X"76";
-					when X"ef" =>
-						R_next <= X"fe";
-						G_next <= X"f3";
-						B_next <= X"86";
-					when X"f0" =>
-						R_next <= X"34";
-						G_next <= X"00";
-						B_next <= X"00";
-					when X"f1" =>
-						R_next <= X"40";
-						G_next <= X"05";
-						B_next <= X"00";
-					when X"f2" =>
-						R_next <= X"4f";
-						G_next <= X"15";
-						B_next <= X"00";
-					when X"f3" =>
-						R_next <= X"5f";
-						G_next <= X"25";
-						B_next <= X"00";
-					when X"f4" =>
-						R_next <= X"6e";
-						G_next <= X"35";
-						B_next <= X"00";
-					when X"f5" =>
-						R_next <= X"7f";
-						G_next <= X"46";
-						B_next <= X"03";
-					when X"f6" =>
-						R_next <= X"8f";
-						G_next <= X"56";
-						B_next <= X"13";
-					when X"f7" =>
-						R_next <= X"9f";
-						G_next <= X"67";
-						B_next <= X"23";
-					when X"f8" =>
-						R_next <= X"aa";
-						G_next <= X"71";
-						B_next <= X"2e";
-					when X"f9" =>
-						R_next <= X"ba";
-						G_next <= X"82";
-						B_next <= X"40";
-					when X"fa" =>
-						R_next <= X"cb";
-						G_next <= X"92";
-						B_next <= X"51";
-					when X"fb" =>
-						R_next <= X"dc";
-						G_next <= X"a3";
-						B_next <= X"62";
-					when X"fc" =>
-						R_next <= X"eb";
-						G_next <= X"b3";
-						B_next <= X"71";
-					when X"fd" =>
-						R_next <= X"fa";
-						G_next <= X"c3";
-						B_next <= X"82";
-					when X"fe" =>
-						R_next <= X"fe";
-						G_next <= X"d3";
-						B_next <= X"92";
-					when X"ff" =>
-						R_next <= X"ff";
-						G_next <= X"e3";
-						B_next <= X"a1";
-					when others =>
-						-- nop
+				when X"00" =>
+					R_next <= X"00";
+					G_next <= X"00";
+					B_next <= X"00";
+				when X"01" =>
+					R_next <= X"11";
+					G_next <= X"11";
+					B_next <= X"11";
+				when X"02" =>
+					R_next <= X"22";
+					G_next <= X"22";
+					B_next <= X"22";
+				when X"03" =>
+					R_next <= X"33";
+					G_next <= X"33";
+					B_next <= X"33";
+				when X"04" =>
+					R_next <= X"44";
+					G_next <= X"44";
+					B_next <= X"44";
+				when X"05" =>
+					R_next <= X"55";
+					G_next <= X"55";
+					B_next <= X"55";
+				when X"06" =>
+					R_next <= X"66";
+					G_next <= X"66";
+					B_next <= X"66";
+				when X"07" =>
+					R_next <= X"77";
+					G_next <= X"77";
+					B_next <= X"77";
+				when X"08" =>
+					R_next <= X"88";
+					G_next <= X"88";
+					B_next <= X"88";
+				when X"09" =>
+					R_next <= X"99";
+					G_next <= X"99";
+					B_next <= X"99";
+				when X"0a" =>
+					R_next <= X"aa";
+					G_next <= X"aa";
+					B_next <= X"aa";
+				when X"0b" =>
+					R_next <= X"bb";
+					G_next <= X"bb";
+					B_next <= X"bb";
+				when X"0c" =>
+					R_next <= X"cc";
+					G_next <= X"cc";
+					B_next <= X"cc";
+				when X"0d" =>
+					R_next <= X"dd";
+					G_next <= X"dd";
+					B_next <= X"dd";
+				when X"0e" =>
+					R_next <= X"ee";
+					G_next <= X"ee";
+					B_next <= X"ee";
+				when X"0f" =>
+					R_next <= X"ff";
+					G_next <= X"ff";
+					B_next <= X"ff";
+				when X"10" =>
+					R_next <= X"09";
+					G_next <= X"19";
+					B_next <= X"00";
+				when X"11" =>
+					R_next <= X"1a";
+					G_next <= X"2a";
+					B_next <= X"00";
+				when X"12" =>
+					R_next <= X"2b";
+					G_next <= X"3b";
+					B_next <= X"00";
+				when X"13" =>
+					R_next <= X"3c";
+					G_next <= X"4c";
+					B_next <= X"00";
+				when X"14" =>
+					R_next <= X"4d";
+					G_next <= X"5d";
+					B_next <= X"00";
+				when X"15" =>
+					R_next <= X"5e";
+					G_next <= X"6e";
+					B_next <= X"00";
+				when X"16" =>
+					R_next <= X"6f";
+					G_next <= X"7f";
+					B_next <= X"00";
+				when X"17" =>
+					R_next <= X"80";
+					G_next <= X"90";
+					B_next <= X"00";
+				when X"18" =>
+					R_next <= X"91";
+					G_next <= X"a1";
+					B_next <= X"00";
+				when X"19" =>
+					R_next <= X"a2";
+					G_next <= X"b2";
+					B_next <= X"01";
+				when X"1a" =>
+					R_next <= X"b3";
+					G_next <= X"c3";
+					B_next <= X"12";
+				when X"1b" =>
+					R_next <= X"c4";
+					G_next <= X"d4";
+					B_next <= X"23";
+				when X"1c" =>
+					R_next <= X"d5";
+					G_next <= X"e5";
+					B_next <= X"34";
+				when X"1d" =>
+					R_next <= X"e6";
+					G_next <= X"f6";
+					B_next <= X"45";
+				when X"1e" =>
+					R_next <= X"f7";
+					G_next <= X"ff";
+					B_next <= X"56";
+				when X"1f" =>
+					R_next <= X"ff";
+					G_next <= X"ff";
+					B_next <= X"67";
+				when X"20" =>
+					R_next <= X"30";
+					G_next <= X"00";
+					B_next <= X"00";
+				when X"21" =>
+					R_next <= X"41";
+					G_next <= X"11";
+					B_next <= X"00";
+				when X"22" =>
+					R_next <= X"52";
+					G_next <= X"22";
+					B_next <= X"00";
+				when X"23" =>
+					R_next <= X"63";
+					G_next <= X"33";
+					B_next <= X"00";
+				when X"24" =>
+					R_next <= X"74";
+					G_next <= X"44";
+					B_next <= X"00";
+				when X"25" =>
+					R_next <= X"85";
+					G_next <= X"55";
+					B_next <= X"00";
+				when X"26" =>
+					R_next <= X"96";
+					G_next <= X"66";
+					B_next <= X"00";
+				when X"27" =>
+					R_next <= X"a7";
+					G_next <= X"77";
+					B_next <= X"00";
+				when X"28" =>
+					R_next <= X"b8";
+					G_next <= X"88";
+					B_next <= X"09";
+				when X"29" =>
+					R_next <= X"c9";
+					G_next <= X"99";
+					B_next <= X"1a";
+				when X"2a" =>
+					R_next <= X"da";
+					G_next <= X"aa";
+					B_next <= X"2b";
+				when X"2b" =>
+					R_next <= X"eb";
+					G_next <= X"bb";
+					B_next <= X"3c";
+				when X"2c" =>
+					R_next <= X"fc";
+					G_next <= X"cc";
+					B_next <= X"4d";
+				when X"2d" =>
+					R_next <= X"ff";
+					G_next <= X"dd";
+					B_next <= X"5e";
+				when X"2e" =>
+					R_next <= X"ff";
+					G_next <= X"ee";
+					B_next <= X"6f";
+				when X"2f" =>
+					R_next <= X"ff";
+					G_next <= X"ff";
+					B_next <= X"80";
+				when X"30" =>
+					R_next <= X"4b";
+					G_next <= X"00";
+					B_next <= X"00";
+				when X"31" =>
+					R_next <= X"5c";
+					G_next <= X"00";
+					B_next <= X"00";
+				when X"32" =>
+					R_next <= X"6d";
+					G_next <= X"0a";
+					B_next <= X"00";
+				when X"33" =>
+					R_next <= X"7e";
+					G_next <= X"1b";
+					B_next <= X"00";
+				when X"34" =>
+					R_next <= X"8f";
+					G_next <= X"2c";
+					B_next <= X"00";
+				when X"35" =>
+					R_next <= X"a0";
+					G_next <= X"3d";
+					B_next <= X"0d";
+				when X"36" =>
+					R_next <= X"b1";
+					G_next <= X"4e";
+					B_next <= X"1e";
+				when X"37" =>
+					R_next <= X"c2";
+					G_next <= X"5f";
+					B_next <= X"2f";
+				when X"38" =>
+					R_next <= X"d3";
+					G_next <= X"70";
+					B_next <= X"40";
+				when X"39" =>
+					R_next <= X"e4";
+					G_next <= X"81";
+					B_next <= X"51";
+				when X"3a" =>
+					R_next <= X"f5";
+					G_next <= X"92";
+					B_next <= X"62";
+				when X"3b" =>
+					R_next <= X"ff";
+					G_next <= X"a3";
+					B_next <= X"73";
+				when X"3c" =>
+					R_next <= X"ff";
+					G_next <= X"b4";
+					B_next <= X"84";
+				when X"3d" =>
+					R_next <= X"ff";
+					G_next <= X"c5";
+					B_next <= X"95";
+				when X"3e" =>
+					R_next <= X"ff";
+					G_next <= X"d6";
+					B_next <= X"a6";
+				when X"3f" =>
+					R_next <= X"ff";
+					G_next <= X"e7";
+					B_next <= X"b7";
+				when X"40" =>
+					R_next <= X"55";
+					G_next <= X"00";
+					B_next <= X"00";
+				when X"41" =>
+					R_next <= X"66";
+					G_next <= X"00";
+					B_next <= X"10";
+				when X"42" =>
+					R_next <= X"77";
+					G_next <= X"00";
+					B_next <= X"21";
+				when X"43" =>
+					R_next <= X"88";
+					G_next <= X"08";
+					B_next <= X"32";
+				when X"44" =>
+					R_next <= X"99";
+					G_next <= X"19";
+					B_next <= X"43";
+				when X"45" =>
+					R_next <= X"aa";
+					G_next <= X"2a";
+					B_next <= X"54";
+				when X"46" =>
+					R_next <= X"bb";
+					G_next <= X"3b";
+					B_next <= X"65";
+				when X"47" =>
+					R_next <= X"cc";
+					G_next <= X"4c";
+					B_next <= X"76";
+				when X"48" =>
+					R_next <= X"dd";
+					G_next <= X"5d";
+					B_next <= X"87";
+				when X"49" =>
+					R_next <= X"ee";
+					G_next <= X"6e";
+					B_next <= X"98";
+				when X"4a" =>
+					R_next <= X"ff";
+					G_next <= X"7f";
+					B_next <= X"a9";
+				when X"4b" =>
+					R_next <= X"ff";
+					G_next <= X"90";
+					B_next <= X"ba";
+				when X"4c" =>
+					R_next <= X"ff";
+					G_next <= X"a1";
+					B_next <= X"cb";
+				when X"4d" =>
+					R_next <= X"ff";
+					G_next <= X"b2";
+					B_next <= X"dc";
+				when X"4e" =>
+					R_next <= X"ff";
+					G_next <= X"c3";
+					B_next <= X"ed";
+				when X"4f" =>
+					R_next <= X"ff";
+					G_next <= X"d4";
+					B_next <= X"fe";
+				when X"50" =>
+					R_next <= X"4c";
+					G_next <= X"00";
+					B_next <= X"47";
+				when X"51" =>
+					R_next <= X"5d";
+					G_next <= X"00";
+					B_next <= X"58";
+				when X"52" =>
+					R_next <= X"6e";
+					G_next <= X"00";
+					B_next <= X"69";
+				when X"53" =>
+					R_next <= X"7f";
+					G_next <= X"00";
+					B_next <= X"7a";
+				when X"54" =>
+					R_next <= X"90";
+					G_next <= X"10";
+					B_next <= X"8b";
+				when X"55" =>
+					R_next <= X"a1";
+					G_next <= X"21";
+					B_next <= X"9c";
+				when X"56" =>
+					R_next <= X"b2";
+					G_next <= X"32";
+					B_next <= X"ad";
+				when X"57" =>
+					R_next <= X"c3";
+					G_next <= X"43";
+					B_next <= X"be";
+				when X"58" =>
+					R_next <= X"d4";
+					G_next <= X"54";
+					B_next <= X"cf";
+				when X"59" =>
+					R_next <= X"e5";
+					G_next <= X"65";
+					B_next <= X"e0";
+				when X"5a" =>
+					R_next <= X"f6";
+					G_next <= X"76";
+					B_next <= X"f1";
+				when X"5b" =>
+					R_next <= X"ff";
+					G_next <= X"87";
+					B_next <= X"ff";
+				when X"5c" =>
+					R_next <= X"ff";
+					G_next <= X"98";
+					B_next <= X"ff";
+				when X"5d" =>
+					R_next <= X"ff";
+					G_next <= X"a9";
+					B_next <= X"ff";
+				when X"5e" =>
+					R_next <= X"ff";
+					G_next <= X"ba";
+					B_next <= X"ff";
+				when X"5f" =>
+					R_next <= X"ff";
+					G_next <= X"cb";
+					B_next <= X"ff";
+				when X"60" =>
+					R_next <= X"30";
+					G_next <= X"00";
+					B_next <= X"7e";
+				when X"61" =>
+					R_next <= X"41";
+					G_next <= X"00";
+					B_next <= X"8f";
+				when X"62" =>
+					R_next <= X"52";
+					G_next <= X"00";
+					B_next <= X"a0";
+				when X"63" =>
+					R_next <= X"63";
+					G_next <= X"02";
+					B_next <= X"b1";
+				when X"64" =>
+					R_next <= X"74";
+					G_next <= X"13";
+					B_next <= X"c2";
+				when X"65" =>
+					R_next <= X"85";
+					G_next <= X"24";
+					B_next <= X"d3";
+				when X"66" =>
+					R_next <= X"96";
+					G_next <= X"35";
+					B_next <= X"e4";
+				when X"67" =>
+					R_next <= X"a7";
+					G_next <= X"46";
+					B_next <= X"f5";
+				when X"68" =>
+					R_next <= X"b8";
+					G_next <= X"57";
+					B_next <= X"ff";
+				when X"69" =>
+					R_next <= X"c9";
+					G_next <= X"68";
+					B_next <= X"ff";
+				when X"6a" =>
+					R_next <= X"da";
+					G_next <= X"79";
+					B_next <= X"ff";
+				when X"6b" =>
+					R_next <= X"eb";
+					G_next <= X"8a";
+					B_next <= X"ff";
+				when X"6c" =>
+					R_next <= X"fc";
+					G_next <= X"9b";
+					B_next <= X"ff";
+				when X"6d" =>
+					R_next <= X"ff";
+					G_next <= X"ac";
+					B_next <= X"ff";
+				when X"6e" =>
+					R_next <= X"ff";
+					G_next <= X"bd";
+					B_next <= X"ff";
+				when X"6f" =>
+					R_next <= X"ff";
+					G_next <= X"ce";
+					B_next <= X"ff";
+				when X"70" =>
+					R_next <= X"0a";
+					G_next <= X"00";
+					B_next <= X"97";
+				when X"71" =>
+					R_next <= X"1b";
+					G_next <= X"00";
+					B_next <= X"a8";
+				when X"72" =>
+					R_next <= X"2c";
+					G_next <= X"00";
+					B_next <= X"b9";
+				when X"73" =>
+					R_next <= X"3d";
+					G_next <= X"11";
+					B_next <= X"ca";
+				when X"74" =>
+					R_next <= X"4e";
+					G_next <= X"22";
+					B_next <= X"db";
+				when X"75" =>
+					R_next <= X"5f";
+					G_next <= X"33";
+					B_next <= X"ec";
+				when X"76" =>
+					R_next <= X"70";
+					G_next <= X"44";
+					B_next <= X"fd";
+				when X"77" =>
+					R_next <= X"81";
+					G_next <= X"55";
+					B_next <= X"ff";
+				when X"78" =>
+					R_next <= X"92";
+					G_next <= X"66";
+					B_next <= X"ff";
+				when X"79" =>
+					R_next <= X"a3";
+					G_next <= X"77";
+					B_next <= X"ff";
+				when X"7a" =>
+					R_next <= X"b4";
+					G_next <= X"88";
+					B_next <= X"ff";
+				when X"7b" =>
+					R_next <= X"c5";
+					G_next <= X"99";
+					B_next <= X"ff";
+				when X"7c" =>
+					R_next <= X"d6";
+					G_next <= X"aa";
+					B_next <= X"ff";
+				when X"7d" =>
+					R_next <= X"e7";
+					G_next <= X"bb";
+					B_next <= X"ff";
+				when X"7e" =>
+					R_next <= X"f8";
+					G_next <= X"cc";
+					B_next <= X"ff";
+				when X"7f" =>
+					R_next <= X"ff";
+					G_next <= X"dd";
+					B_next <= X"ff";
+				when X"80" =>
+					R_next <= X"00";
+					G_next <= X"00";
+					B_next <= X"8e";
+				when X"81" =>
+					R_next <= X"00";
+					G_next <= X"05";
+					B_next <= X"9f";
+				when X"82" =>
+					R_next <= X"03";
+					G_next <= X"16";
+					B_next <= X"b0";
+				when X"83" =>
+					R_next <= X"14";
+					G_next <= X"27";
+					B_next <= X"c1";
+				when X"84" =>
+					R_next <= X"25";
+					G_next <= X"38";
+					B_next <= X"d2";
+				when X"85" =>
+					R_next <= X"36";
+					G_next <= X"49";
+					B_next <= X"e3";
+				when X"86" =>
+					R_next <= X"47";
+					G_next <= X"5a";
+					B_next <= X"f4";
+				when X"87" =>
+					R_next <= X"58";
+					G_next <= X"6b";
+					B_next <= X"ff";
+				when X"88" =>
+					R_next <= X"69";
+					G_next <= X"7c";
+					B_next <= X"ff";
+				when X"89" =>
+					R_next <= X"7a";
+					G_next <= X"8d";
+					B_next <= X"ff";
+				when X"8a" =>
+					R_next <= X"8b";
+					G_next <= X"9e";
+					B_next <= X"ff";
+				when X"8b" =>
+					R_next <= X"9c";
+					G_next <= X"af";
+					B_next <= X"ff";
+				when X"8c" =>
+					R_next <= X"ad";
+					G_next <= X"c0";
+					B_next <= X"ff";
+				when X"8d" =>
+					R_next <= X"be";
+					G_next <= X"d1";
+					B_next <= X"ff";
+				when X"8e" =>
+					R_next <= X"cf";
+					G_next <= X"e2";
+					B_next <= X"ff";
+				when X"8f" =>
+					R_next <= X"e0";
+					G_next <= X"f3";
+					B_next <= X"ff";
+				when X"90" =>
+					R_next <= X"00";
+					G_next <= X"0e";
+					B_next <= X"64";
+				when X"91" =>
+					R_next <= X"00";
+					G_next <= X"1f";
+					B_next <= X"75";
+				when X"92" =>
+					R_next <= X"00";
+					G_next <= X"30";
+					B_next <= X"86";
+				when X"93" =>
+					R_next <= X"00";
+					G_next <= X"41";
+					B_next <= X"97";
+				when X"94" =>
+					R_next <= X"03";
+					G_next <= X"52";
+					B_next <= X"a8";
+				when X"95" =>
+					R_next <= X"14";
+					G_next <= X"63";
+					B_next <= X"b9";
+				when X"96" =>
+					R_next <= X"25";
+					G_next <= X"74";
+					B_next <= X"ca";
+				when X"97" =>
+					R_next <= X"36";
+					G_next <= X"85";
+					B_next <= X"db";
+				when X"98" =>
+					R_next <= X"47";
+					G_next <= X"96";
+					B_next <= X"ec";
+				when X"99" =>
+					R_next <= X"58";
+					G_next <= X"a7";
+					B_next <= X"fd";
+				when X"9a" =>
+					R_next <= X"69";
+					G_next <= X"b8";
+					B_next <= X"ff";
+				when X"9b" =>
+					R_next <= X"7a";
+					G_next <= X"c9";
+					B_next <= X"ff";
+				when X"9c" =>
+					R_next <= X"8b";
+					G_next <= X"da";
+					B_next <= X"ff";
+				when X"9d" =>
+					R_next <= X"9c";
+					G_next <= X"eb";
+					B_next <= X"ff";
+				when X"9e" =>
+					R_next <= X"ad";
+					G_next <= X"fc";
+					B_next <= X"ff";
+				when X"9f" =>
+					R_next <= X"be";
+					G_next <= X"ff";
+					B_next <= X"ff";
+				when X"a0" =>
+					R_next <= X"00";
+					G_next <= X"24";
+					B_next <= X"22";
+				when X"a1" =>
+					R_next <= X"00";
+					G_next <= X"35";
+					B_next <= X"33";
+				when X"a2" =>
+					R_next <= X"00";
+					G_next <= X"46";
+					B_next <= X"44";
+				when X"a3" =>
+					R_next <= X"00";
+					G_next <= X"57";
+					B_next <= X"55";
+				when X"a4" =>
+					R_next <= X"00";
+					G_next <= X"68";
+					B_next <= X"66";
+				when X"a5" =>
+					R_next <= X"02";
+					G_next <= X"79";
+					B_next <= X"77";
+				when X"a6" =>
+					R_next <= X"13";
+					G_next <= X"8a";
+					B_next <= X"88";
+				when X"a7" =>
+					R_next <= X"24";
+					G_next <= X"9b";
+					B_next <= X"99";
+				when X"a8" =>
+					R_next <= X"35";
+					G_next <= X"ac";
+					B_next <= X"aa";
+				when X"a9" =>
+					R_next <= X"46";
+					G_next <= X"bd";
+					B_next <= X"bb";
+				when X"aa" =>
+					R_next <= X"57";
+					G_next <= X"ce";
+					B_next <= X"cc";
+				when X"ab" =>
+					R_next <= X"68";
+					G_next <= X"df";
+					B_next <= X"dd";
+				when X"ac" =>
+					R_next <= X"79";
+					G_next <= X"f0";
+					B_next <= X"ee";
+				when X"ad" =>
+					R_next <= X"8a";
+					G_next <= X"ff";
+					B_next <= X"ff";
+				when X"ae" =>
+					R_next <= X"9b";
+					G_next <= X"ff";
+					B_next <= X"ff";
+				when X"af" =>
+					R_next <= X"ac";
+					G_next <= X"ff";
+					B_next <= X"ff";
+				when X"b0" =>
+					R_next <= X"00";
+					G_next <= X"32";
+					B_next <= X"00";
+				when X"b1" =>
+					R_next <= X"00";
+					G_next <= X"43";
+					B_next <= X"00";
+				when X"b2" =>
+					R_next <= X"00";
+					G_next <= X"54";
+					B_next <= X"00";
+				when X"b3" =>
+					R_next <= X"00";
+					G_next <= X"65";
+					B_next <= X"0c";
+				when X"b4" =>
+					R_next <= X"00";
+					G_next <= X"76";
+					B_next <= X"1d";
+				when X"b5" =>
+					R_next <= X"02";
+					G_next <= X"87";
+					B_next <= X"2e";
+				when X"b6" =>
+					R_next <= X"13";
+					G_next <= X"98";
+					B_next <= X"3f";
+				when X"b7" =>
+					R_next <= X"24";
+					G_next <= X"a9";
+					B_next <= X"50";
+				when X"b8" =>
+					R_next <= X"35";
+					G_next <= X"ba";
+					B_next <= X"61";
+				when X"b9" =>
+					R_next <= X"46";
+					G_next <= X"cb";
+					B_next <= X"72";
+				when X"ba" =>
+					R_next <= X"57";
+					G_next <= X"dc";
+					B_next <= X"83";
+				when X"bb" =>
+					R_next <= X"68";
+					G_next <= X"ed";
+					B_next <= X"94";
+				when X"bc" =>
+					R_next <= X"79";
+					G_next <= X"fe";
+					B_next <= X"a5";
+				when X"bd" =>
+					R_next <= X"8a";
+					G_next <= X"ff";
+					B_next <= X"b6";
+				when X"be" =>
+					R_next <= X"9b";
+					G_next <= X"ff";
+					B_next <= X"c7";
+				when X"bf" =>
+					R_next <= X"ac";
+					G_next <= X"ff";
+					B_next <= X"d8";
+				when X"c0" =>
+					R_next <= X"00";
+					G_next <= X"34";
+					B_next <= X"00";
+				when X"c1" =>
+					R_next <= X"00";
+					G_next <= X"45";
+					B_next <= X"00";
+				when X"c2" =>
+					R_next <= X"00";
+					G_next <= X"56";
+					B_next <= X"00";
+				when X"c3" =>
+					R_next <= X"00";
+					G_next <= X"67";
+					B_next <= X"00";
+				when X"c4" =>
+					R_next <= X"05";
+					G_next <= X"78";
+					B_next <= X"00";
+				when X"c5" =>
+					R_next <= X"16";
+					G_next <= X"89";
+					B_next <= X"00";
+				when X"c6" =>
+					R_next <= X"27";
+					G_next <= X"9a";
+					B_next <= X"00";
+				when X"c7" =>
+					R_next <= X"38";
+					G_next <= X"ab";
+					B_next <= X"0f";
+				when X"c8" =>
+					R_next <= X"49";
+					G_next <= X"bc";
+					B_next <= X"20";
+				when X"c9" =>
+					R_next <= X"5a";
+					G_next <= X"cd";
+					B_next <= X"31";
+				when X"ca" =>
+					R_next <= X"6b";
+					G_next <= X"de";
+					B_next <= X"42";
+				when X"cb" =>
+					R_next <= X"7c";
+					G_next <= X"ef";
+					B_next <= X"53";
+				when X"cc" =>
+					R_next <= X"8d";
+					G_next <= X"ff";
+					B_next <= X"64";
+				when X"cd" =>
+					R_next <= X"9e";
+					G_next <= X"ff";
+					B_next <= X"75";
+				when X"ce" =>
+					R_next <= X"af";
+					G_next <= X"ff";
+					B_next <= X"86";
+				when X"cf" =>
+					R_next <= X"c0";
+					G_next <= X"ff";
+					B_next <= X"97";
+				when X"d0" =>
+					R_next <= X"00";
+					G_next <= X"2a";
+					B_next <= X"00";
+				when X"d1" =>
+					R_next <= X"00";
+					G_next <= X"3b";
+					B_next <= X"00";
+				when X"d2" =>
+					R_next <= X"06";
+					G_next <= X"4c";
+					B_next <= X"00";
+				when X"d3" =>
+					R_next <= X"17";
+					G_next <= X"5d";
+					B_next <= X"00";
+				when X"d4" =>
+					R_next <= X"28";
+					G_next <= X"6e";
+					B_next <= X"00";
+				when X"d5" =>
+					R_next <= X"39";
+					G_next <= X"7f";
+					B_next <= X"00";
+				when X"d6" =>
+					R_next <= X"4a";
+					G_next <= X"90";
+					B_next <= X"00";
+				when X"d7" =>
+					R_next <= X"5b";
+					G_next <= X"a1";
+					B_next <= X"00";
+				when X"d8" =>
+					R_next <= X"6c";
+					G_next <= X"b2";
+					B_next <= X"00";
+				when X"d9" =>
+					R_next <= X"7d";
+					G_next <= X"c3";
+					B_next <= X"09";
+				when X"da" =>
+					R_next <= X"8e";
+					G_next <= X"d4";
+					B_next <= X"1a";
+				when X"db" =>
+					R_next <= X"9f";
+					G_next <= X"e5";
+					B_next <= X"2b";
+				when X"dc" =>
+					R_next <= X"b0";
+					G_next <= X"f6";
+					B_next <= X"3c";
+				when X"dd" =>
+					R_next <= X"c1";
+					G_next <= X"ff";
+					B_next <= X"4d";
+				when X"de" =>
+					R_next <= X"d2";
+					G_next <= X"ff";
+					B_next <= X"5e";
+				when X"df" =>
+					R_next <= X"e3";
+					G_next <= X"ff";
+					B_next <= X"6f";
+				when X"e0" =>
+					R_next <= X"0d";
+					G_next <= X"17";
+					B_next <= X"00";
+				when X"e1" =>
+					R_next <= X"1e";
+					G_next <= X"28";
+					B_next <= X"00";
+				when X"e2" =>
+					R_next <= X"2f";
+					G_next <= X"39";
+					B_next <= X"00";
+				when X"e3" =>
+					R_next <= X"40";
+					G_next <= X"4a";
+					B_next <= X"00";
+				when X"e4" =>
+					R_next <= X"51";
+					G_next <= X"5b";
+					B_next <= X"00";
+				when X"e5" =>
+					R_next <= X"62";
+					G_next <= X"6c";
+					B_next <= X"00";
+				when X"e6" =>
+					R_next <= X"73";
+					G_next <= X"7d";
+					B_next <= X"00";
+				when X"e7" =>
+					R_next <= X"84";
+					G_next <= X"8e";
+					B_next <= X"00";
+				when X"e8" =>
+					R_next <= X"95";
+					G_next <= X"9f";
+					B_next <= X"00";
+				when X"e9" =>
+					R_next <= X"a6";
+					G_next <= X"b0";
+					B_next <= X"02";
+				when X"ea" =>
+					R_next <= X"b7";
+					G_next <= X"c1";
+					B_next <= X"13";
+				when X"eb" =>
+					R_next <= X"c8";
+					G_next <= X"d2";
+					B_next <= X"24";
+				when X"ec" =>
+					R_next <= X"d9";
+					G_next <= X"e3";
+					B_next <= X"35";
+				when X"ed" =>
+					R_next <= X"ea";
+					G_next <= X"f4";
+					B_next <= X"46";
+				when X"ee" =>
+					R_next <= X"fb";
+					G_next <= X"ff";
+					B_next <= X"57";
+				when X"ef" =>
+					R_next <= X"ff";
+					G_next <= X"ff";
+					B_next <= X"68";
+				when X"f0" =>
+					R_next <= X"33";
+					G_next <= X"00";
+					B_next <= X"00";
+				when X"f1" =>
+					R_next <= X"44";
+					G_next <= X"0f";
+					B_next <= X"00";
+				when X"f2" =>
+					R_next <= X"55";
+					G_next <= X"20";
+					B_next <= X"00";
+				when X"f3" =>
+					R_next <= X"66";
+					G_next <= X"31";
+					B_next <= X"00";
+				when X"f4" =>
+					R_next <= X"77";
+					G_next <= X"42";
+					B_next <= X"00";
+				when X"f5" =>
+					R_next <= X"88";
+					G_next <= X"53";
+					B_next <= X"00";
+				when X"f6" =>
+					R_next <= X"99";
+					G_next <= X"64";
+					B_next <= X"00";
+				when X"f7" =>
+					R_next <= X"aa";
+					G_next <= X"75";
+					B_next <= X"00";
+				when X"f8" =>
+					R_next <= X"bb";
+					G_next <= X"86";
+					B_next <= X"0e";
+				when X"f9" =>
+					R_next <= X"cc";
+					G_next <= X"97";
+					B_next <= X"1f";
+				when X"fa" =>
+					R_next <= X"dd";
+					G_next <= X"a8";
+					B_next <= X"30";
+				when X"fb" =>
+					R_next <= X"ee";
+					G_next <= X"b9";
+					B_next <= X"41";
+				when X"fc" =>
+					R_next <= X"ff";
+					G_next <= X"ca";
+					B_next <= X"52";
+				when X"fd" =>
+					R_next <= X"ff";
+					G_next <= X"db";
+					B_next <= X"63";
+				when X"fe" =>
+					R_next <= X"ff";
+					G_next <= X"ec";
+					B_next <= X"74";
+				when X"ff" =>
+					R_next <= X"ff";
+					G_next <= X"fd";
+					B_next <= X"85";
+				when others =>
+					--nop
 			end case;
-			
+		end if;
 		end process;
-		
-end laoo;
+end vhdl;
Index: common/a8core/pot_from_signed.vhdl
===================================================================
--- common/a8core/pot_from_signed.vhdl	(revision 243)
+++ common/a8core/pot_from_signed.vhdl	(revision 244)
@@ -15,7 +15,10 @@
 ENTITY pot_from_signed IS
 GENERIC
 (
-	initial : integer := 30 + 128
+	cycle_length : integer := 32;
+	line_length : integer := 114;
+	min_lines : integer := 0;
+	max_lines : integer := 227
 );
 PORT 
 ( 
@@ -24,7 +27,6 @@
 
 	ENABLED : IN STD_LOGIC;
 	POT_RESET : IN STD_LOGIC;
-	COUNT_ENABLE : IN STD_LOGIC;
 	POS : IN SIGNED(7 downto 0);
 	POT_HIGH : OUT STD_LOGIC
 );
@@ -31,12 +33,28 @@
 END pot_from_signed;
 
 ARCHITECTURE vhdl OF pot_from_signed IS
+	signal enable_179 : std_logic;
+	signal count_enable : std_logic;
+
 	signal count_reg : std_logic_vector(9 downto 0);
 	signal count_next : std_logic_vector(9 downto 0);
 
 	signal pot_out_reg : std_logic;
 	signal pot_out_next : std_logic;
+	
+	constant count_cycles : integer :=(max_lines-min_lines)*line_length/256; -- i.e. how many machines cycles for every change in POS
 BEGIN
+
+enable_179_clock_div : entity work.enable_divider
+	generic map (COUNT=>cycle_length)
+	port map(clk=>clk,reset_n=>reset_n,enable_in=>'1',enable_out=>enable_179);
+
+---- 114K to 386k (51 to 172) 121 lines.  i.e. 121*114 cycles/256 values = ~54
+---- TODO linear or not?
+pot_clock_div : entity work.enable_divider
+	generic map (COUNT=>count_cycles)
+	port map(clk=>clk,reset_n=>reset_n,enable_in=>enable_179,enable_out=>count_enable);
+
 	process(clk, reset_n)
 	begin
 		if (reset_n='0') then
@@ -48,12 +66,12 @@
 		end if;
 	end process;
 
-	process(count_reg,pot_reset,count_enable,pot_out_next,enabled)
+	process(count_reg,pot_reset,count_enable,pot_out_next,enabled,pos)
 	begin
 		count_next <= count_reg;
 
 		if (pot_reset ='1' or enabled = '0') then
-			count_next <= std_logic_vector(to_unsigned(to_integer(pos)+initial,10));
+			count_next <= std_logic_vector(to_unsigned(to_integer(pos)+128+(line_length*min_lines/count_cycles),10));
 		end if;
 
 		if (count_enable = '1') then
Index: common/components/scandoubler.vhdl
===================================================================
--- common/components/scandoubler.vhdl	(revision 243)
+++ common/components/scandoubler.vhdl	(revision 244)
@@ -28,6 +28,7 @@
 	scanlines_on : in std_logic := '0';
 	
 	-- GTIA interface
+	pal : in std_logic;
 	colour_in : in std_logic_vector(7 downto 0);
 	vsync_in : in std_logic;
 	hsync_in : in std_logic;
@@ -44,34 +45,6 @@
 
 ARCHITECTURE vhdl OF scandoubler IS
 
-	COMPONENT gtia_palette IS
-	PORT 
-	( 
-		ATARI_COLOUR : IN STD_LOGIC_VECTOR(7 downto 0);
-		
-		R_next : OUT STD_LOGIC_VECTOR(7 downto 0);
-		G_next : OUT STD_LOGIC_VECTOR(7 downto 0);
-		B_next : OUT STD_LOGIC_VECTOR(7 downto 0)
-	);
-	END component;
-	
---	component reg_file IS
---	generic
---	(
---		BYTES : natural := 1;
---		WIDTH : natural := 1
---	);
---	PORT 
---	( 
---		CLK : IN STD_LOGIC;
---		ADDR : IN STD_LOGIC_VECTOR(width-1 DOWNTO 0);
---		DATA_IN : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
---		WR_EN : IN STD_LOGIC;
---		
---		DATA_OUT : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
---	);
---	END component;
-	
 	component scandouble_ram_infer IS
    PORT
    (
@@ -300,23 +273,8 @@
 	end process;
 
 	-- colour palette
---	Color             Value         Color             Value
---Black           0,      0	Medium blue     8,    128
---Rust            1,     16       Dark blue       9,    144
---Red-orange      2,     32       Blue-grey      10,    160
---Dark orange     3,     48       Olive green    11,    176
---Red             4,     64       Medium green   12,    192
---Dk lavender     5,     80       Dark green     13,    208
---Cobalt blue     6,     96       Orange-green   14,    224
---Ultramarine     7,    112       Orange         15,    240
-
--- from altirra	
-	palette1 : entity work.gtia_palette(altirra)
-		port map (ATARI_COLOUR=>colour_reg, R_next=>R_next, G_next=>G_next, B_next=>B_next);
-		
--- from lao
---	palette2 : entity work.gtia_palette(laoo)
---		port map (ATARI_COLOUR=>COLOUR, R_next=>R_next, G_next=>G_next, B_next=>B_next);		
+	palette4 : entity work.gtia_palette
+		port map (PAL=>pal,ATARI_COLOUR=>colour_reg, R_next=>R_next, G_next=>G_next, B_next=>B_next);		
 	
 	-- output	
 		-- TODO - for DE2, output full 8 bits
Index: de1/atari800core_de1.vhd
===================================================================
--- de1/atari800core_de1.vhd	(revision 243)
+++ de1/atari800core_de1.vhd	(revision 244)
@@ -248,9 +248,12 @@
 	signal freezer_state: std_logic_vector(2 downto 0);
 
 	signal pbi_enable: std_logic;
+
+	signal pal : std_logic;
 BEGIN 
 
 	pbi_enable <= SW(4);
+	PAL <= SW(8);
 
 -- ANYTHING NOT CONNECTED...
 --GPIO_0(0) <= 'Z';
@@ -475,6 +478,7 @@
 	 	 scanlines_on => SW(5),
 		 vsync_in => VGA_VS_RAW,
 		 hsync_in => VGA_HS_RAW,
+		 pal => PAL,
 		 colour_in => VIDEO_B,
 		 VSYNC => VGA_VS,
 		 HSYNC => VGA_HS,
@@ -671,7 +675,7 @@
 		RAM_SELECT => ram_select,
 		ROM_SELECT => rom_select,
 		CART_EMULATION_SELECT => emulated_cartridge_select,
-		PAL => SW(8),
+		PAL => PAL,
 		USE_SDRAM => SW(9),
 		ROM_IN_RAM => '1',
 		THROTTLE_COUNT_6502 => speed_6502,
@@ -684,6 +688,7 @@
 		pbi_enable => pbi_enable
 	);
 
+
 zpu: entity work.zpucore
 	GENERIC MAP
 	(
Index: de1_5200/zpu_rom.vhdl
===================================================================
--- de1_5200/zpu_rom.vhdl	(revision 243)
+++ de1_5200/zpu_rom.vhdl	(revision 244)
@@ -180,8 +180,8 @@
 X"00000000",
 X"00000000",
 X"71fc0608",
-X"0b0b80e5",
-X"d0738306",
+X"0b0b80e7",
+X"a8738306",
 X"10100508",
 X"060b0b0b",
 X"88a20400",
@@ -227,7 +227,7 @@
 X"00000000",
 X"00000000",
 X"00000000",
-X"810b80e8",
+X"810b80ea",
 X"f00c5104",
 X"00000000",
 X"00000000",
@@ -300,8 +300,8 @@
 X"83e08008",
 X"83e08408",
 X"83e08808",
-X"757580df",
-X"fe2d5050",
+X"757580e1",
+X"d82d5050",
 X"83e08008",
 X"5683e088",
 X"0c83e084",
@@ -310,7 +310,7 @@
 X"e0800883",
 X"e0840883",
 X"e0880875",
-X"7580de92",
+X"7580dfec",
 X"2d505083",
 X"e0800856",
 X"83e0880c",
@@ -319,7 +319,7 @@
 X"51040000",
 X"800489aa",
 X"0489aa0b",
-X"80d9d404",
+X"80dbad04",
 X"f43d0d7e",
 X"8f3dec11",
 X"56565890",
@@ -330,8 +330,8 @@
 X"78902e09",
 X"810680cd",
 X"3802ab05",
-X"3380e8f8",
-X"0b80e8f8",
+X"3380eaf8",
+X"0b80eaf8",
 X"33575856",
 X"8c397476",
 X"2e8a3884",
@@ -378,16 +378,16 @@
 X"7451998e",
 X"3f83e080",
 X"080b0b80",
-X"e7b05383",
+X"e9905383",
 X"e0800852",
 X"53ff8f3f",
 X"83e08008",
 X"a5380b0b",
-X"80e7b452",
+X"80e99452",
 X"7251fefe",
 X"3f83e080",
 X"0894380b",
-X"0b80e7b8",
+X"0b80e998",
 X"527251fe",
 X"ed3f83e0",
 X"8008802e",
@@ -413,7 +413,7 @@
 X"3f83e080",
 X"0833943d",
 X"56547394",
-X"3880ea80",
+X"3880ec80",
 X"52745184",
 X"c7397d52",
 X"785191d6",
@@ -466,12 +466,12 @@
 X"800b83e7",
 X"bc0c800b",
 X"83e7e00c",
-X"0b0b80e7",
-X"bc518bae",
+X"0b0b80e9",
+X"9c518bae",
 X"3f81800b",
 X"83e7e00c",
-X"0b0b80e7",
-X"c4518b9e",
+X"0b0b80e9",
+X"a4518b9e",
 X"3fa80b83",
 X"e7bc0c76",
 X"802e80e8",
@@ -485,12 +485,12 @@
 X"968e3f83",
 X"e0800880",
 X"2e8a380b",
-X"0b80e7cc",
+X"0b80e9ac",
 X"518ae33f",
 X"765195ce",
 X"3f83e080",
 X"08520b0b",
-X"80e88051",
+X"80e9e051",
 X"8ad03f76",
 X"5195d43f",
 X"83e08008",
@@ -508,18 +508,18 @@
 X"3f83e080",
 X"08785255",
 X"95aa3f0b",
-X"0b80e7d4",
+X"0b80e9b4",
 X"5483e080",
 X"088f3887",
 X"39807634",
 X"fd95390b",
-X"0b80e7d0",
+X"0b80e9b0",
 X"54745373",
 X"520b0b80",
-X"e7a05189",
+X"e9805189",
 X"e93f8054",
-X"0b0b80e7",
-X"a85189de",
+X"0b0b80e9",
+X"885189de",
 X"3f811454",
 X"73a82e09",
 X"8106ed38",
@@ -526,10 +526,10 @@
 X"868da051",
 X"bed13f80",
 X"52903d70",
-X"525480cc",
-X"e63f8352",
-X"735180cc",
-X"de3f6180",
+X"525480ce",
+X"c03f8352",
+X"735180ce",
+X"b83f6180",
 X"2e80ff38",
 X"7b5473ff",
 X"2e963878",
@@ -546,7 +546,7 @@
 X"785193ee",
 X"3f83e080",
 X"08520b0b",
-X"80e7ac51",
+X"80e98c51",
 X"abcc3f83",
 X"e08008a4",
 X"387c51ad",
@@ -620,7 +620,7 @@
 X"f638823d",
 X"0d04803d",
 X"0d853980",
-X"c5a23ffe",
+X"c7973ffe",
 X"d83f83e0",
 X"8008802e",
 X"f2389080",
@@ -662,7 +662,7 @@
 X"73259438",
 X"73708105",
 X"55335280",
-X"e7d85185",
+X"e9b85185",
 X"a13fff13",
 X"53e93985",
 X"3d0d04f6",
@@ -672,19 +672,19 @@
 X"81558539",
 X"747a2955",
 X"74527551",
-X"80c8f53f",
+X"80cacf3f",
 X"83e08008",
 X"7a27ed38",
 X"74802e80",
 X"e0387452",
-X"755180c8",
-X"df3f83e0",
+X"755180ca",
+X"b93f83e0",
 X"80087553",
 X"76525480",
-X"c9853f83",
+X"cadf3f83",
 X"e080087a",
 X"53755256",
-X"80c8c53f",
+X"80ca9f3f",
 X"83e08008",
 X"7930707b",
 X"079f2a70",
@@ -1086,7 +1086,7 @@
 X"7b7d5a5a",
 X"82d05283",
 X"e2d00851",
-X"bbfe3f83",
+X"bdd83f83",
 X"e0800857",
 X"f9e23f79",
 X"5283e2d8",
@@ -1097,10 +1097,10 @@
 X"2e098106",
 X"82833883",
 X"e0b4080b",
-X"0b80e7ac",
+X"0b80e98c",
 X"53705256",
 X"9bd33f0b",
-X"0b80e7ac",
+X"0b80e98c",
 X"5280c016",
 X"519bc63f",
 X"75bc170c",
@@ -1376,8 +1376,8 @@
 X"8b5affab",
 X"3976982b",
 X"55748025",
-X"873880e4",
-X"e0173357",
+X"873880e6",
+X"b8173357",
 X"ff9f1755",
 X"74992689",
 X"38e01770",
@@ -1572,7 +1572,7 @@
 X"3179842a",
 X"903d3354",
 X"71713153",
-X"5656ace4",
+X"5656aebe",
 X"3f83e080",
 X"08820570",
 X"881c0c83",
@@ -1732,11 +1732,11 @@
 X"56537680",
 X"2eb53874",
 X"52ff1651",
-X"a7e63f83",
+X"a9c03f83",
 X"e08008ff",
 X"18765470",
-X"535853a7",
-X"d73f83e0",
+X"535853a9",
+X"b13f83e0",
 X"80087326",
 X"96387430",
 X"70780670",
@@ -2367,8 +2367,8 @@
 X"8106e438",
 X"86fe3f89",
 X"3d58a253",
-X"80e6e052",
-X"77519afb",
+X"80e8b852",
+X"77519cd5",
 X"3f80578c",
 X"805683e7",
 X"b4081677",
@@ -2561,7 +2561,7 @@
 X"3f72802e",
 X"90388051",
 X"fe943fce",
-X"3f80e9ec",
+X"3f80ebec",
 X"3351fe8a",
 X"3f8151fc",
 X"a33f8051",
@@ -2653,7 +2653,7 @@
 X"7390802e",
 X"098106e9",
 X"38853d0d",
-X"0480e7e0",
+X"0480e9c0",
 X"0b83e080",
 X"0c04f73d",
 X"0d805a80",
@@ -2662,11 +2662,11 @@
 X"e73f800b",
 X"83e7bc0c",
 X"800b83e7",
-X"e00c80e7",
-X"e451c6de",
+X"e00c80e9",
+X"c451c6de",
 X"3f81800b",
 X"83e7e00c",
-X"80e7e851",
+X"80e9c851",
 X"c6d03f80",
 X"d00b83e7",
 X"bc0c7530",
@@ -2675,8 +2675,8 @@
 X"83e7e00c",
 X"5154f982",
 X"3f83e080",
-X"085280e7",
-X"f051c6aa",
+X"085280e9",
+X"d051c6aa",
 X"3f80f80b",
 X"83e7bc0c",
 X"75813270",
@@ -2686,7 +2686,7 @@
 X"0c515555",
 X"ff833f83",
 X"e0800852",
-X"80e7fc51",
+X"80e9dc51",
 X"c6803f81",
 X"a00b83e7",
 X"bc0c7582",
@@ -2698,7 +2698,7 @@
 X"085255c7",
 X"9a3f83e0",
 X"80085280",
-X"e88451c5",
+X"e9e451c5",
 X"d13f81c8",
 X"0b83e7bc",
 X"0c758332",
@@ -2706,7 +2706,7 @@
 X"07802570",
 X"872b83e7",
 X"e00c5155",
-X"80e88c52",
+X"80e9ec52",
 X"55c5af3f",
 X"81f00b83",
 X"e7bc0c75",
@@ -2714,8 +2714,8 @@
 X"70720780",
 X"2570872b",
 X"83e7e00c",
-X"515580e8",
-X"9c5255c5",
+X"515580e9",
+X"fc5255c5",
 X"8d3f8298",
 X"0b83e7bc",
 X"0c758532",
@@ -2723,7 +2723,7 @@
 X"07802570",
 X"872b83e7",
 X"e00c5155",
-X"80e8b452",
+X"80ea9452",
 X"55c4eb3f",
 X"82c00b83",
 X"e7bc0c75",
@@ -2731,25 +2731,42 @@
 X"70720780",
 X"2570872b",
 X"83e7e00c",
-X"515580e8",
+X"515580ea",
+X"ac5255c4",
+X"c93f82e8",
+X"0b83e7bc",
+X"0c758732",
+X"70307072",
+X"07802570",
+X"872b83e7",
+X"e00c5155",
+X"80eabc52",
+X"55c4a73f",
+X"83900b83",
+X"e7bc0c75",
+X"88327030",
+X"70720780",
+X"2570872b",
+X"83e7e00c",
+X"515580ea",
 X"cc5255c4",
-X"c93f868d",
-X"a051f9c7",
+X"853f868d",
+X"a051f983",
 X"3f805288",
 X"3d705254",
-X"87dd3f83",
-X"52735187",
-X"d63f7816",
+X"88f33f83",
+X"52735188",
+X"ec3f7816",
 X"56758025",
 X"85388056",
-X"90398676",
-X"25853886",
+X"90398876",
+X"25853888",
 X"56873975",
-X"862682db",
+X"8826848c",
 X"38758429",
-X"80e78405",
+X"80e8dc05",
 X"54730804",
-X"f6d43f83",
+X"f6903f83",
 X"e0800878",
 X"56547481",
 X"2e098106",
@@ -2763,9 +2780,9 @@
 X"85389054",
 X"88397380",
 X"24833881",
-X"547351f6",
-X"ae3f828f",
-X"39f6c03f",
+X"547351f5",
+X"ea3f83c0",
+X"39f5fc3f",
 X"83e08008",
 X"18547380",
 X"25853880",
@@ -2772,38 +2789,38 @@
 X"54883987",
 X"74258338",
 X"87547351",
-X"f6ba3f81",
-X"ee397787",
+X"f5f63f83",
+X"9f397787",
 X"3879802e",
-X"81e53883",
+X"83963883",
 X"e0a40883",
 X"e0a00c8b",
 X"df0b83e0",
 X"a80c83e7",
 X"d40851ff",
-X"b5e73ffb",
-X"b53f81c7",
+X"b5a33ffa",
+X"f13f82f8",
 X"3979802e",
-X"81c13883",
+X"82f23883",
 X"e09c0883",
 X"e0a00c8b",
 X"df0b83e0",
 X"a80c83e7",
 X"d00851ff",
-X"b5c33f75",
+X"b4ff3f75",
 X"832e0981",
 X"06943881",
 X"80805382",
 X"80805283",
 X"e7d00851",
-X"fa993f81",
-X"87397584",
+X"f9d53f82",
+X"b8397584",
 X"2e098106",
 X"af388280",
 X"80538180",
 X"805283e7",
 X"d00851f9",
-X"fe3f8054",
+X"ba3f8054",
 X"84828080",
 X"14338481",
 X"80801534",
@@ -2810,18 +2827,18 @@
 X"81145473",
 X"8180802e",
 X"098106e8",
-X"3880d139",
+X"38828239",
 X"75852e09",
-X"810680c8",
+X"810680cb",
 X"38805481",
 X"80805380",
 X"c0805283",
 X"e7d00851",
-X"f9c53f82",
+X"f9813f82",
 X"80805380",
 X"c0805283",
 X"e7d00851",
-X"f9b53f84",
+X"f8f13f84",
 X"81808014",
 X"338481c0",
 X"80153484",
@@ -2831,251 +2848,329 @@
 X"14547380",
 X"c0802e09",
 X"8106dc38",
-X"81548c39",
-X"79873876",
-X"802efac3",
-X"38805473",
-X"83e0800c",
-X"8b3d0d04",
-X"ff3d0df5",
-X"d63f83e0",
-X"8008802e",
-X"86388051",
-X"80dd39f5",
-X"db3f83e0",
-X"800880d1",
-X"38f5fb3f",
+X"81af3975",
+X"862e0981",
+X"0680c138",
+X"81808053",
+X"80c08052",
+X"83e7d008",
+X"51f8b03f",
+X"80558481",
+X"80801554",
+X"73338481",
+X"c0801634",
+X"73338482",
+X"80801634",
+X"73338482",
+X"c0801634",
+X"81155574",
+X"80c0802e",
+X"098106d6",
+X"3880e639",
+X"75872e09",
+X"810680dd",
+X"38818080",
+X"53a08052",
+X"83e7d008",
+X"51f7e83f",
+X"80558481",
+X"80801554",
+X"73338481",
+X"a0801634",
+X"73338481",
+X"c0801634",
+X"73338481",
+X"e0801634",
+X"73338482",
+X"80801634",
+X"73338482",
+X"a0801634",
+X"73338482",
+X"c0801634",
+X"73338482",
+X"e0801634",
+X"81155574",
+X"a0802e09",
+X"8106ffb6",
+X"3881548c",
+X"39798738",
+X"76802ef8",
+X"ce388054",
+X"7383e080",
+X"0c8b3d0d",
+X"04ff3d0d",
+X"f3e13f83",
+X"e0800880",
+X"2e853880",
+X"51bb39f3",
+X"e73f83e0",
+X"8008b038",
+X"f4883f83",
+X"e0800880",
+X"2eb13881",
+X"51f1973f",
+X"edde3f80",
+X"0b83e7bc",
+X"0cf7ff3f",
 X"83e08008",
-X"802eaa38",
-X"8151f38a",
-X"3fefd13f",
-X"800b83e7",
-X"bc0cf9f2",
-X"3f83e080",
-X"0852ff0b",
-X"83e7bc0c",
-X"f1d63f71",
-X"a4387151",
-X"f2e83fa2",
-X"39f5b23f",
+X"52ff0b83",
+X"e7bc0cef",
+X"e33f7180",
+X"2e883881",
+X"51f4da3f",
+X"86397151",
+X"f0ec3f83",
+X"3d0d04fc",
+X"3d0d9080",
+X"80528684",
+X"808051c4",
+X"a93f83e0",
+X"8008b838",
+X"80ebf051",
+X"c8ec3f83",
+X"e0800883",
+X"e7d40854",
+X"80ead853",
 X"83e08008",
-X"802e9738",
-X"8151f2d6",
-X"3fef9d3f",
-X"ff0b83e7",
-X"bc0cf1b0",
-X"3f8151f6",
-X"ac3f833d",
-X"0d04fc3d",
-X"0d908080",
-X"52868480",
-X"8051c682",
+X"5255c3c8",
 X"3f83e080",
-X"08b83880",
-X"e9f051ca",
-X"c53f83e0",
-X"800883e7",
-X"d4085480",
-X"e8d85383",
-X"e0800852",
-X"55c5a13f",
+X"088438f6",
+X"d13f8180",
+X"80548280",
+X"805380ea",
+X"d4527451",
+X"f69b3f81",
+X"51f3fe3f",
+X"fed33ffc",
+X"3983e08c",
+X"080283e0",
+X"8c0cfb3d",
+X"0d0280ea",
+X"e40b83e0",
+X"a40c80ea",
+X"e80b83e0",
+X"9c0c80ea",
+X"ec0b83e0",
+X"ac0c83e0",
+X"8c08fc05",
+X"0c800b83",
+X"e7c00b83",
+X"e08c08f8",
+X"050c83e0",
+X"8c08f405",
+X"0cc2973f",
 X"83e08008",
-X"8438f8aa",
-X"3f818080",
-X"54828080",
-X"5380e8d4",
-X"527451f7",
-X"f43f8151",
-X"f5d73ffe",
-X"b73ffc39",
+X"8605fc06",
 X"83e08c08",
+X"f0050c02",
+X"83e08c08",
+X"f0050831",
+X"0d833d70",
+X"83e08c08",
+X"f8050870",
+X"840583e0",
+X"8c08f805",
+X"0c0c51ff",
+X"bedf3f83",
+X"e08c08f4",
+X"05088105",
+X"83e08c08",
+X"f4050c83",
+X"e08c08f4",
+X"0508872e",
+X"098106ff",
+X"ac388694",
+X"808051eb",
+X"a93fff0b",
+X"83e7bc0c",
+X"800b83e7",
+X"e00c84d8",
+X"c00b83e7",
+X"dc0c8151",
+X"eedc3f81",
+X"51ef813f",
+X"8051eefc",
+X"3f8151ef",
+X"a23f8151",
+X"eff73f82",
+X"51efc53f",
+X"8051f09b",
+X"3f8051f0",
+X"c53f80d0",
+X"c4528051",
+X"ffbc983f",
+X"fdc53f83",
+X"e08c08fc",
+X"05080d80",
+X"0b83e080",
+X"0c873d0d",
+X"83e08c0c",
+X"04fd3d0d",
+X"75548074",
+X"0c800b84",
+X"150c800b",
+X"88150c87",
+X"d0893387",
+X"d08f3370",
+X"822a7081",
+X"06703070",
+X"72077009",
+X"709f2c77",
+X"069e0654",
+X"51515551",
+X"51535380",
+X"72980652",
+X"5370882e",
+X"09810683",
+X"38815370",
+X"98327030",
+X"70802575",
+X"71318418",
+X"0c515151",
+X"80728606",
+X"52537082",
+X"2e098106",
+X"83388153",
+X"70863270",
+X"30708025",
+X"75713177",
+X"0c515151",
+X"71943270",
+X"30708025",
+X"88170c51",
+X"51853d0d",
+X"04fe3d0d",
+X"74765452",
+X"7151feed",
+X"3f72812e",
+X"a2388173",
+X"268d3872",
+X"822eab38",
+X"72832e9f",
+X"38e63971",
+X"08e23884",
+X"1208dd38",
+X"881208d8",
+X"38a03988",
+X"1208812e",
+X"098106cc",
+X"38943988",
+X"1208812e",
+X"8d387108",
+X"89388412",
+X"08802eff",
+X"b738843d",
+X"0d0483e0",
+X"8c080283",
+X"e08c0cfd",
+X"3d0d8053",
+X"83e08c08",
+X"8c050852",
+X"83e08c08",
+X"88050851",
+X"83d43f83",
+X"e0800870",
+X"83e0800c",
+X"54853d0d",
+X"83e08c0c",
+X"0483e08c",
+X"080283e0",
+X"8c0cfd3d",
+X"0d815383",
+X"e08c088c",
+X"05085283",
+X"e08c0888",
+X"05085183",
+X"a13f83e0",
+X"80087083",
+X"e0800c54",
+X"853d0d83",
+X"e08c0c04",
+X"83e08c08",
 X"0283e08c",
-X"0cfb3d0d",
-X"0280e8e4",
-X"0b83e0a4",
-X"0c80e8e8",
-X"0b83e09c",
-X"0c80e8ec",
-X"0b83e0ac",
+X"0cf93d0d",
+X"800b83e0",
+X"8c08fc05",
 X"0c83e08c",
-X"08fc050c",
-X"800b83e7",
-X"c00b83e0",
-X"8c08f805",
-X"0c83e08c",
+X"08880508",
+X"8025b938",
+X"83e08c08",
+X"88050830",
+X"83e08c08",
+X"88050c80",
+X"0b83e08c",
 X"08f4050c",
-X"c3f03f83",
-X"e0800886",
-X"05fc0683",
-X"e08c08f0",
-X"050c0283",
-X"e08c08f0",
-X"0508310d",
-X"833d7083",
-X"e08c08f8",
-X"05087084",
-X"0583e08c",
-X"08f8050c",
-X"0c51c0b9",
-X"3f83e08c",
-X"08f40508",
-X"810583e0",
+X"83e08c08",
+X"fc05088a",
+X"38810b83",
+X"e08c08f4",
+X"050c83e0",
 X"8c08f405",
+X"0883e08c",
+X"08fc050c",
+X"83e08c08",
+X"8c050880",
+X"25b93883",
+X"e08c088c",
+X"05083083",
+X"e08c088c",
+X"050c800b",
+X"83e08c08",
+X"f0050c83",
+X"e08c08fc",
+X"05088a38",
+X"810b83e0",
+X"8c08f005",
 X"0c83e08c",
-X"08f40508",
-X"872e0981",
-X"06ffad38",
-X"86948080",
-X"51ed833f",
-X"ff0b83e7",
-X"bc0c800b",
-X"83e7e00c",
-X"84d8c00b",
-X"83e7dc0c",
-X"8151f0b6",
-X"3f8151f0",
-X"db3f8051",
-X"f0d63f81",
-X"51f0fc3f",
-X"8151f1d1",
-X"3f8251f1",
-X"9f3f8051",
-X"f1f53f80",
-X"51f29f3f",
-X"80d0c452",
-X"8051ffbd",
-X"f23ffdc6",
-X"3f83e08c",
-X"08fc0508",
-X"0d800b83",
-X"e0800c87",
-X"3d0d83e0",
-X"8c0c04fd",
-X"3d0d7554",
-X"80740c80",
-X"0b84150c",
-X"800b8815",
-X"0c87d089",
-X"3387d08f",
-X"3370822a",
-X"70810670",
-X"30707207",
-X"7009709f",
-X"2c77069e",
-X"06545151",
-X"55515153",
-X"53807298",
-X"06525370",
-X"882e0981",
-X"06833881",
-X"53709832",
-X"70307080",
-X"25757131",
-X"84180c51",
-X"51518072",
-X"86065253",
-X"70822e09",
-X"81068338",
-X"81537086",
-X"32703070",
-X"80257571",
-X"31770c51",
-X"51517194",
-X"32703070",
-X"80258817",
-X"0c515185",
-X"3d0d04fe",
-X"3d0d7476",
-X"54527151",
-X"feed3f72",
-X"812ea238",
-X"8173268d",
-X"3872822e",
-X"ab387283",
-X"2e9f38e6",
-X"397108e2",
-X"38841208",
-X"dd388812",
-X"08d838a0",
-X"39881208",
-X"812e0981",
-X"06cc3894",
-X"39881208",
-X"812e8d38",
-X"71088938",
-X"84120880",
-X"2effb738",
-X"843d0d04",
+X"08f00508",
 X"83e08c08",
-X"0283e08c",
-X"0cfd3d0d",
-X"805383e0",
-X"8c088c05",
-X"085283e0",
-X"8c088805",
-X"085183d4",
-X"3f83e080",
-X"087083e0",
-X"800c5485",
-X"3d0d83e0",
-X"8c0c0483",
-X"e08c0802",
-X"83e08c0c",
-X"fd3d0d81",
+X"fc050c80",
 X"5383e08c",
 X"088c0508",
 X"5283e08c",
 X"08880508",
-X"5183a13f",
+X"5181df3f",
 X"83e08008",
-X"7083e080",
-X"0c54853d",
-X"0d83e08c",
-X"0c0483e0",
-X"8c080283",
-X"e08c0cf9",
-X"3d0d800b",
+X"7083e08c",
+X"08f8050c",
+X"5483e08c",
+X"08fc0508",
+X"802e9038",
 X"83e08c08",
-X"fc050c83",
-X"e08c0888",
-X"05088025",
-X"b93883e0",
-X"8c088805",
-X"083083e0",
-X"8c088805",
-X"0c800b83",
-X"e08c08f4",
-X"050c83e0",
-X"8c08fc05",
-X"088a3881",
-X"0b83e08c",
-X"08f4050c",
+X"f8050830",
 X"83e08c08",
-X"f4050883",
-X"e08c08fc",
-X"050c83e0",
-X"8c088c05",
-X"088025b9",
-X"3883e08c",
-X"088c0508",
-X"3083e08c",
-X"088c050c",
+X"f8050c83",
+X"e08c08f8",
+X"05087083",
+X"e0800c54",
+X"893d0d83",
+X"e08c0c04",
+X"83e08c08",
+X"0283e08c",
+X"0cfb3d0d",
 X"800b83e0",
-X"8c08f005",
+X"8c08fc05",
 X"0c83e08c",
-X"08fc0508",
-X"8a38810b",
+X"08880508",
+X"80259938",
 X"83e08c08",
-X"f0050c83",
-X"e08c08f0",
-X"050883e0",
-X"8c08fc05",
-X"0c805383",
+X"88050830",
+X"83e08c08",
+X"88050c81",
+X"0b83e08c",
+X"08fc050c",
+X"83e08c08",
+X"8c050880",
+X"25903883",
 X"e08c088c",
-X"05085283",
-X"e08c0888",
-X"05085181",
-X"df3f83e0",
+X"05083083",
+X"e08c088c",
+X"050c8153",
+X"83e08c08",
+X"8c050852",
+X"83e08c08",
+X"88050851",
+X"bd3f83e0",
 X"80087083",
 X"e08c08f8",
 X"050c5483",
@@ -3088,189 +3183,148 @@
 X"0c83e08c",
 X"08f80508",
 X"7083e080",
-X"0c54893d",
+X"0c54873d",
 X"0d83e08c",
 X"0c0483e0",
 X"8c080283",
-X"e08c0cfb",
-X"3d0d800b",
+X"e08c0cfd",
+X"3d0d810b",
 X"83e08c08",
-X"fc050c83",
+X"fc050c80",
+X"0b83e08c",
+X"08f8050c",
+X"83e08c08",
+X"8c050883",
 X"e08c0888",
-X"05088025",
-X"993883e0",
-X"8c088805",
-X"083083e0",
-X"8c088805",
-X"0c810b83",
+X"050827b9",
+X"3883e08c",
+X"08fc0508",
+X"802eae38",
+X"800b83e0",
+X"8c088c05",
+X"0824a238",
+X"83e08c08",
+X"8c050810",
+X"83e08c08",
+X"8c050c83",
 X"e08c08fc",
-X"050c83e0",
-X"8c088c05",
-X"08802590",
+X"05081083",
+X"e08c08fc",
+X"050cffb8",
+X"3983e08c",
+X"08fc0508",
+X"802e80e1",
 X"3883e08c",
 X"088c0508",
-X"3083e08c",
-X"088c050c",
-X"815383e0",
-X"8c088c05",
-X"085283e0",
+X"83e08c08",
+X"88050826",
+X"ad3883e0",
 X"8c088805",
-X"0851bd3f",
-X"83e08008",
-X"7083e08c",
-X"08f8050c",
-X"5483e08c",
-X"08fc0508",
-X"802e9038",
+X"0883e08c",
+X"088c0508",
+X"3183e08c",
+X"0888050c",
 X"83e08c08",
-X"f8050830",
-X"83e08c08",
-X"f8050c83",
+X"f8050883",
+X"e08c08fc",
+X"05080783",
 X"e08c08f8",
-X"05087083",
-X"e0800c54",
-X"873d0d83",
-X"e08c0c04",
-X"83e08c08",
-X"0283e08c",
-X"0cfd3d0d",
-X"810b83e0",
+X"050c83e0",
 X"8c08fc05",
-X"0c800b83",
-X"e08c08f8",
+X"08812a83",
+X"e08c08fc",
 X"050c83e0",
 X"8c088c05",
-X"0883e08c",
-X"08880508",
-X"27b93883",
-X"e08c08fc",
-X"0508802e",
-X"ae38800b",
-X"83e08c08",
-X"8c050824",
-X"a23883e0",
-X"8c088c05",
-X"081083e0",
-X"8c088c05",
-X"0c83e08c",
-X"08fc0508",
-X"1083e08c",
-X"08fc050c",
-X"ffb83983",
-X"e08c08fc",
-X"0508802e",
-X"80e13883",
+X"08812a83",
 X"e08c088c",
-X"050883e0",
-X"8c088805",
-X"0826ad38",
+X"050cff95",
+X"3983e08c",
+X"08900508",
+X"802e9338",
 X"83e08c08",
-X"88050883",
-X"e08c088c",
-X"05083183",
-X"e08c0888",
-X"050c83e0",
+X"88050870",
+X"83e08c08",
+X"f4050c51",
+X"913983e0",
 X"8c08f805",
-X"0883e08c",
-X"08fc0508",
-X"0783e08c",
-X"08f8050c",
-X"83e08c08",
-X"fc050881",
-X"2a83e08c",
-X"08fc050c",
-X"83e08c08",
-X"8c050881",
-X"2a83e08c",
-X"088c050c",
-X"ff953983",
-X"e08c0890",
-X"0508802e",
-X"933883e0",
-X"8c088805",
 X"087083e0",
 X"8c08f405",
-X"0c519139",
+X"0c5183e0",
+X"8c08f405",
+X"0883e080",
+X"0c853d0d",
+X"83e08c0c",
+X"0483e08c",
+X"080283e0",
+X"8c0cff3d",
+X"0d800b83",
+X"e08c08fc",
+X"050c83e0",
+X"8c088805",
+X"088106ff",
+X"11700970",
 X"83e08c08",
-X"f8050870",
+X"8c050806",
 X"83e08c08",
-X"f4050c51",
+X"fc050811",
 X"83e08c08",
-X"f4050883",
-X"e0800c85",
-X"3d0d83e0",
-X"8c0c0483",
-X"e08c0802",
-X"83e08c0c",
-X"ff3d0d80",
-X"0b83e08c",
-X"08fc050c",
+X"fc050c83",
+X"e08c0888",
+X"0508812a",
 X"83e08c08",
-X"88050881",
-X"06ff1170",
-X"097083e0",
-X"8c088c05",
-X"080683e0",
-X"8c08fc05",
-X"081183e0",
-X"8c08fc05",
-X"0c83e08c",
-X"08880508",
-X"812a83e0",
+X"88050c83",
+X"e08c088c",
+X"05081083",
+X"e08c088c",
+X"050c5151",
+X"515183e0",
 X"8c088805",
-X"0c83e08c",
-X"088c0508",
-X"1083e08c",
-X"088c050c",
-X"51515151",
+X"08802e84",
+X"38ffab39",
 X"83e08c08",
-X"88050880",
-X"2e8438ff",
-X"ab3983e0",
-X"8c08fc05",
-X"087083e0",
-X"800c5183",
-X"3d0d83e0",
-X"8c0c04fc",
-X"3d0d7670",
-X"797b5555",
-X"55558f72",
-X"278c3872",
-X"75078306",
-X"5170802e",
-X"a938ff12",
-X"5271ff2e",
-X"98387270",
-X"81055433",
-X"74708105",
-X"5634ff12",
-X"5271ff2e",
-X"098106ea",
-X"387483e0",
-X"800c863d",
-X"0d047451",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"f0125271",
-X"8f26c938",
-X"83722795",
-X"38727084",
-X"05540871",
-X"70840553",
-X"0cfc1252",
-X"718326ed",
-X"387054ff",
-X"81390000",
+X"fc050870",
+X"83e0800c",
+X"51833d0d",
+X"83e08c0c",
+X"04fc3d0d",
+X"7670797b",
+X"55555555",
+X"8f72278c",
+X"38727507",
+X"83065170",
+X"802ea938",
+X"ff125271",
+X"ff2e9838",
+X"72708105",
+X"54337470",
+X"81055634",
+X"ff125271",
+X"ff2e0981",
+X"06ea3874",
+X"83e0800c",
+X"863d0d04",
+X"74517270",
+X"84055408",
+X"71708405",
+X"530c7270",
+X"84055408",
+X"71708405",
+X"530c7270",
+X"84055408",
+X"71708405",
+X"530c7270",
+X"84055408",
+X"71708405",
+X"530cf012",
+X"52718f26",
+X"c9388372",
+X"27953872",
+X"70840554",
+X"08717084",
+X"05530cfc",
+X"12527183",
+X"26ed3870",
+X"54ff8139",
 X"00ffffff",
 X"ff00ffff",
 X"ffff00ff",
@@ -3316,13 +3370,15 @@
 X"02020202",
 X"02020241",
 X"00060000",
-X"00002aa8",
-X"00002ae9",
-X"00002b0a",
-X"00002b31",
-X"00002b31",
-X"00002b31",
-X"00002bf4",
+X"00002aec",
+X"00002b2d",
+X"00002b4e",
+X"00002b75",
+X"00002b75",
+X"00002b75",
+X"00002b75",
+X"00002b75",
+X"00002ce9",
 X"25732025",
 X"73000000",
 X"20000000",
@@ -3366,6 +3422,14 @@
 X"6b207477",
 X"6f206368",
 X"69700000",
+X"43617274",
+X"72696467",
+X"6520386b",
+X"00000000",
+X"43617274",
+X"72696467",
+X"6520346b",
+X"00000000",
 X"45786974",
 X"00000000",
 X"61636964",
@@ -3465,70 +3529,6 @@
 X"00000000",
 X"00000000",
 X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
 X"00000000",
 X"00000000",
 X"00000000",
Index: firmware/5200/mainmenu.c
===================================================================
--- firmware/5200/mainmenu.c	(revision 243)
+++ firmware/5200/mainmenu.c	(revision 244)
@@ -92,6 +92,14 @@
 
 		debug_pos = 320;
 		debug_adjust = row==6 ? 128 : 0;
+		printf("Cartridge 8k");
+
+		debug_pos = 360;
+		debug_adjust = row==7 ? 128 : 0;
+		printf("Cartridge 4k");
+
+		debug_pos = 400;
+		debug_adjust = row==8 ? 128 : 0;
 		printf("Exit");
 
 		// Slow it down a bit
@@ -103,7 +111,7 @@
 
 		row+=joy.y_;
 		if (row<0) row = 0;
-		if (row>6) row = 6;
+		if (row>8) row = 8;
 		switch (row)
 		{
 		case 0:
@@ -139,6 +147,8 @@
 		case 3:
 		case 4:
 		case 5:
+		case 6:
+		case 7:
 			{
 				if (joy.fire_)
 				{
@@ -182,11 +192,53 @@
 							dest2[i] = src2[i];
 						}
 					}
+					else if (row == 6)
+					{
+						//*atari_colbk = 0x58;
+						//wait_us(4000000);
+						loadromfile(files[4],0x2000,0x004000);
+						unsigned char * src = (unsigned char *)(0x4000 + SDRAM_BASE);
+						unsigned char * dest1 = (unsigned char *)(0x6000 + SDRAM_BASE);
+						unsigned char * dest2 = (unsigned char *)(0x8000 + SDRAM_BASE);
+						unsigned char * dest3 = (unsigned char *)(0xa000 + SDRAM_BASE);
+						int i = 0;
+						for (i=0; i!=0x2000; ++i)
+						{
+							dest1[i] = src[i];
+							dest2[i] = src[i];
+							dest3[i] = src[i];
+						}
+					}
+					else if (row == 7)
+					{
+						//*atari_colbk = 0x58;
+						//wait_us(4000000);
+						loadromfile(files[4],0x1000,0x004000);
+						unsigned char * src = (unsigned char *)(0x4000 + SDRAM_BASE);
+						unsigned char * dest1 = (unsigned char *)(0x5000 + SDRAM_BASE);
+						unsigned char * dest2 = (unsigned char *)(0x6000 + SDRAM_BASE);
+						unsigned char * dest3 = (unsigned char *)(0x7000 + SDRAM_BASE);
+						unsigned char * dest4 = (unsigned char *)(0x8000 + SDRAM_BASE);
+						unsigned char * dest5 = (unsigned char *)(0x9000 + SDRAM_BASE);
+						unsigned char * dest6 = (unsigned char *)(0xa000 + SDRAM_BASE);
+						unsigned char * dest7 = (unsigned char *)(0xb000 + SDRAM_BASE);
+						int i = 0;
+						for (i=0; i!=0x1000; ++i)
+						{
+							dest1[i] = src[i];
+							dest2[i] = src[i];
+							dest3[i] = src[i];
+							dest4[i] = src[i];
+							dest5[i] = src[i];
+							dest6[i] = src[i];
+							dest7[i] = src[i];
+						}
+					}
 					return 1;
 				}
 			}
 			break;
-		case 6:
+		case 8:
 			if (joy.fire_)
 			{
 				done = 1;
@@ -228,15 +280,4 @@
 		else
 			set_pause_6502(0);
 	}
-	else if (get_hotkey_fileselect())
-	{
-		set_pause_6502(1);
-		freeze();
-		//filter = filter_disks;
-		//file_selector(files[0]);
-		debug_pos = -1;
-		restore();
-		//set_drive_status(0,files[0]);
-		reboot(1);
-	}
 }
Index: mist/atari800core_mist.vhd
===================================================================
--- mist/atari800core_mist.vhd	(revision 243)
+++ mist/atari800core_mist.vhd	(revision 244)
@@ -183,6 +183,11 @@
   signal		JOY2_n :  STD_LOGIC_VECTOR(4 DOWNTO 0);
   signal joy_still : std_logic;
 
+  signal		JOY1X : std_logic_vector(7 downto 0);
+  signal		JOY1Y : std_logic_vector(7 downto 0);
+  signal		JOY2X : std_logic_vector(7 downto 0);
+  signal		JOY2Y : std_logic_vector(7 downto 0);
+
   SIGNAL	KEYBOARD_RESPONSE :  STD_LOGIC_VECTOR(1 DOWNTO 0);
   SIGNAL	KEYBOARD_SCAN :  STD_LOGIC_VECTOR(5 DOWNTO 0);
 
@@ -282,8 +287,10 @@
 	   SPI_MOSI => SPI_DI,
 		JOYSTICK_0 => joy2,
 		JOYSTICK_1 => joy1,
-		JOYSTICK_ANALOG_0 => open,
-		JOYSTICK_ANALOG_1 => open, -- todo, wire up to paddles
+		JOYSTICK_ANALOG_0(15 downto 8) => joy2x,
+		JOYSTICK_ANALOG_0(7 downto 0) => joy2y,
+		JOYSTICK_ANALOG_1(15 downto 8) => joy1x,
+		JOYSTICK_ANALOG_1(7 downto 0) => joy1y,
 		BUTTONS => mist_buttons,
 		SWITCHES => mist_switches,
 		STATUS => open,
@@ -431,6 +438,11 @@
 		JOY1_n => JOY1_n(4)&JOY1_n(0)&JOY1_n(1)&JOY1_n(2)&JOY1_n(3),
 		JOY2_n => JOY2_n(4)&JOY2_n(0)&JOY2_n(1)&JOY2_n(2)&JOY2_n(3),
 
+		PADDLE0 => signed(joy1x),
+		PADDLE1 => signed(joy1y),
+		PADDLE2 => signed(joy2x),
+		PADDLE3 => signed(joy2y),
+
 		KEYBOARD_RESPONSE => KEYBOARD_RESPONSE,
 		KEYBOARD_SCAN => KEYBOARD_SCAN,
 
@@ -550,6 +562,7 @@
 		scanlines_on => mist_switches(1),
 		
 		-- GTIA interface
+		pal => PAL,
 		colour_in => VIDEO_B,
 		vsync_in => VGA_VS_RAW,
 		hsync_in => VGA_HS_RAW,
Index: mist_5200/atari5200core_mist.vhd
===================================================================
--- mist_5200/atari5200core_mist.vhd	(revision 243)
+++ mist_5200/atari5200core_mist.vhd	(revision 244)
@@ -532,6 +532,7 @@
 		VGA => vga,
 		COMPOSITE_ON_HSYNC => composite_on_hsync,
 
+		pal => '0',
 		colour_enable => half_scandouble_enable_reg,
 		doubled_enable => '1',
 		scanlines_on => mist_switches(1),
Index: mist_5200/zpu_rom.vhdl
===================================================================
--- mist_5200/zpu_rom.vhdl	(revision 243)
+++ mist_5200/zpu_rom.vhdl	(revision 244)
@@ -180,8 +180,8 @@
 X"00000000",
 X"00000000",
 X"71fc0608",
-X"0b0b80e5",
-X"d0738306",
+X"0b0b80e7",
+X"a8738306",
 X"10100508",
 X"060b0b0b",
 X"88a20400",
@@ -227,7 +227,7 @@
 X"00000000",
 X"00000000",
 X"00000000",
-X"810b80e8",
+X"810b80ea",
 X"f00c5104",
 X"00000000",
 X"00000000",
@@ -300,8 +300,8 @@
 X"83e08008",
 X"83e08408",
 X"83e08808",
-X"757580df",
-X"fe2d5050",
+X"757580e1",
+X"d82d5050",
 X"83e08008",
 X"5683e088",
 X"0c83e084",
@@ -310,7 +310,7 @@
 X"e0800883",
 X"e0840883",
 X"e0880875",
-X"7580de92",
+X"7580dfec",
 X"2d505083",
 X"e0800856",
 X"83e0880c",
@@ -319,7 +319,7 @@
 X"51040000",
 X"800489aa",
 X"0489aa0b",
-X"80d9d404",
+X"80dbad04",
 X"f43d0d7e",
 X"8f3dec11",
 X"56565890",
@@ -330,8 +330,8 @@
 X"78902e09",
 X"810680cd",
 X"3802ab05",
-X"3380e8f8",
-X"0b80e8f8",
+X"3380eaf8",
+X"0b80eaf8",
 X"33575856",
 X"8c397476",
 X"2e8a3884",
@@ -378,16 +378,16 @@
 X"7451998e",
 X"3f83e080",
 X"080b0b80",
-X"e7b05383",
+X"e9905383",
 X"e0800852",
 X"53ff8f3f",
 X"83e08008",
 X"a5380b0b",
-X"80e7b452",
+X"80e99452",
 X"7251fefe",
 X"3f83e080",
 X"0894380b",
-X"0b80e7b8",
+X"0b80e998",
 X"527251fe",
 X"ed3f83e0",
 X"8008802e",
@@ -413,7 +413,7 @@
 X"3f83e080",
 X"0833943d",
 X"56547394",
-X"3880ea80",
+X"3880ec80",
 X"52745184",
 X"c7397d52",
 X"785191d6",
@@ -466,12 +466,12 @@
 X"800b83e7",
 X"bc0c800b",
 X"83e7e00c",
-X"0b0b80e7",
-X"bc518bae",
+X"0b0b80e9",
+X"9c518bae",
 X"3f81800b",
 X"83e7e00c",
-X"0b0b80e7",
-X"c4518b9e",
+X"0b0b80e9",
+X"a4518b9e",
 X"3fa80b83",
 X"e7bc0c76",
 X"802e80e8",
@@ -485,12 +485,12 @@
 X"968e3f83",
 X"e0800880",
 X"2e8a380b",
-X"0b80e7cc",
+X"0b80e9ac",
 X"518ae33f",
 X"765195ce",
 X"3f83e080",
 X"08520b0b",
-X"80e88051",
+X"80e9e051",
 X"8ad03f76",
 X"5195d43f",
 X"83e08008",
@@ -508,18 +508,18 @@
 X"3f83e080",
 X"08785255",
 X"95aa3f0b",
-X"0b80e7d4",
+X"0b80e9b4",
 X"5483e080",
 X"088f3887",
 X"39807634",
 X"fd95390b",
-X"0b80e7d0",
+X"0b80e9b0",
 X"54745373",
 X"520b0b80",
-X"e7a05189",
+X"e9805189",
 X"e93f8054",
-X"0b0b80e7",
-X"a85189de",
+X"0b0b80e9",
+X"885189de",
 X"3f811454",
 X"73a82e09",
 X"8106ed38",
@@ -526,10 +526,10 @@
 X"868da051",
 X"bed13f80",
 X"52903d70",
-X"525480cc",
-X"e63f8352",
-X"735180cc",
-X"de3f6180",
+X"525480ce",
+X"c03f8352",
+X"735180ce",
+X"b83f6180",
 X"2e80ff38",
 X"7b5473ff",
 X"2e963878",
@@ -546,7 +546,7 @@
 X"785193ee",
 X"3f83e080",
 X"08520b0b",
-X"80e7ac51",
+X"80e98c51",
 X"abcc3f83",
 X"e08008a4",
 X"387c51ad",
@@ -620,7 +620,7 @@
 X"f638823d",
 X"0d04803d",
 X"0d853980",
-X"c5a23ffe",
+X"c7973ffe",
 X"d83f83e0",
 X"8008802e",
 X"f2389080",
@@ -662,7 +662,7 @@
 X"73259438",
 X"73708105",
 X"55335280",
-X"e7d85185",
+X"e9b85185",
 X"a13fff13",
 X"53e93985",
 X"3d0d04f6",
@@ -672,19 +672,19 @@
 X"81558539",
 X"747a2955",
 X"74527551",
-X"80c8f53f",
+X"80cacf3f",
 X"83e08008",
 X"7a27ed38",
 X"74802e80",
 X"e0387452",
-X"755180c8",
-X"df3f83e0",
+X"755180ca",
+X"b93f83e0",
 X"80087553",
 X"76525480",
-X"c9853f83",
+X"cadf3f83",
 X"e080087a",
 X"53755256",
-X"80c8c53f",
+X"80ca9f3f",
 X"83e08008",
 X"7930707b",
 X"079f2a70",
@@ -1086,7 +1086,7 @@
 X"7b7d5a5a",
 X"82d05283",
 X"e2d00851",
-X"bbfe3f83",
+X"bdd83f83",
 X"e0800857",
 X"f9e23f79",
 X"5283e2d8",
@@ -1097,10 +1097,10 @@
 X"2e098106",
 X"82833883",
 X"e0b4080b",
-X"0b80e7ac",
+X"0b80e98c",
 X"53705256",
 X"9bd33f0b",
-X"0b80e7ac",
+X"0b80e98c",
 X"5280c016",
 X"519bc63f",
 X"75bc170c",
@@ -1376,8 +1376,8 @@
 X"8b5affab",
 X"3976982b",
 X"55748025",
-X"873880e4",
-X"e0173357",
+X"873880e6",
+X"b8173357",
 X"ff9f1755",
 X"74992689",
 X"38e01770",
@@ -1572,7 +1572,7 @@
 X"3179842a",
 X"903d3354",
 X"71713153",
-X"5656ace4",
+X"5656aebe",
 X"3f83e080",
 X"08820570",
 X"881c0c83",
@@ -1732,11 +1732,11 @@
 X"56537680",
 X"2eb53874",
 X"52ff1651",
-X"a7e63f83",
+X"a9c03f83",
 X"e08008ff",
 X"18765470",
-X"535853a7",
-X"d73f83e0",
+X"535853a9",
+X"b13f83e0",
 X"80087326",
 X"96387430",
 X"70780670",
@@ -2367,8 +2367,8 @@
 X"8106e438",
 X"86fe3f89",
 X"3d58a253",
-X"80e6e052",
-X"77519afb",
+X"80e8b852",
+X"77519cd5",
 X"3f80578c",
 X"805683e7",
 X"b4081677",
@@ -2561,7 +2561,7 @@
 X"3f72802e",
 X"90388051",
 X"fe943fce",
-X"3f80e9ec",
+X"3f80ebec",
 X"3351fe8a",
 X"3f8151fc",
 X"a33f8051",
@@ -2653,7 +2653,7 @@
 X"7390802e",
 X"098106e9",
 X"38853d0d",
-X"0480e7e0",
+X"0480e9c0",
 X"0b83e080",
 X"0c04f73d",
 X"0d805a80",
@@ -2662,11 +2662,11 @@
 X"e73f800b",
 X"83e7bc0c",
 X"800b83e7",
-X"e00c80e7",
-X"e451c6de",
+X"e00c80e9",
+X"c451c6de",
 X"3f81800b",
 X"83e7e00c",
-X"80e7e851",
+X"80e9c851",
 X"c6d03f80",
 X"d00b83e7",
 X"bc0c7530",
@@ -2675,8 +2675,8 @@
 X"83e7e00c",
 X"5154f982",
 X"3f83e080",
-X"085280e7",
-X"f051c6aa",
+X"085280e9",
+X"d051c6aa",
 X"3f80f80b",
 X"83e7bc0c",
 X"75813270",
@@ -2686,7 +2686,7 @@
 X"0c515555",
 X"ff833f83",
 X"e0800852",
-X"80e7fc51",
+X"80e9dc51",
 X"c6803f81",
 X"a00b83e7",
 X"bc0c7582",
@@ -2698,7 +2698,7 @@
 X"085255c7",
 X"9a3f83e0",
 X"80085280",
-X"e88451c5",
+X"e9e451c5",
 X"d13f81c8",
 X"0b83e7bc",
 X"0c758332",
@@ -2706,7 +2706,7 @@
 X"07802570",
 X"872b83e7",
 X"e00c5155",
-X"80e88c52",
+X"80e9ec52",
 X"55c5af3f",
 X"81f00b83",
 X"e7bc0c75",
@@ -2714,8 +2714,8 @@
 X"70720780",
 X"2570872b",
 X"83e7e00c",
-X"515580e8",
-X"9c5255c5",
+X"515580e9",
+X"fc5255c5",
 X"8d3f8298",
 X"0b83e7bc",
 X"0c758532",
@@ -2723,7 +2723,7 @@
 X"07802570",
 X"872b83e7",
 X"e00c5155",
-X"80e8b452",
+X"80ea9452",
 X"55c4eb3f",
 X"82c00b83",
 X"e7bc0c75",
@@ -2731,25 +2731,42 @@
 X"70720780",
 X"2570872b",
 X"83e7e00c",
-X"515580e8",
+X"515580ea",
+X"ac5255c4",
+X"c93f82e8",
+X"0b83e7bc",
+X"0c758732",
+X"70307072",
+X"07802570",
+X"872b83e7",
+X"e00c5155",
+X"80eabc52",
+X"55c4a73f",
+X"83900b83",
+X"e7bc0c75",
+X"88327030",
+X"70720780",
+X"2570872b",
+X"83e7e00c",
+X"515580ea",
 X"cc5255c4",
-X"c93f868d",
-X"a051f9c7",
+X"853f868d",
+X"a051f983",
 X"3f805288",
 X"3d705254",
-X"87dd3f83",
-X"52735187",
-X"d63f7816",
+X"88f33f83",
+X"52735188",
+X"ec3f7816",
 X"56758025",
 X"85388056",
-X"90398676",
-X"25853886",
+X"90398876",
+X"25853888",
 X"56873975",
-X"862682db",
+X"8826848c",
 X"38758429",
-X"80e78405",
+X"80e8dc05",
 X"54730804",
-X"f6d43f83",
+X"f6903f83",
 X"e0800878",
 X"56547481",
 X"2e098106",
@@ -2763,9 +2780,9 @@
 X"85389054",
 X"88397380",
 X"24833881",
-X"547351f6",
-X"ae3f828f",
-X"39f6c03f",
+X"547351f5",
+X"ea3f83c0",
+X"39f5fc3f",
 X"83e08008",
 X"18547380",
 X"25853880",
@@ -2772,38 +2789,38 @@
 X"54883987",
 X"74258338",
 X"87547351",
-X"f6ba3f81",
-X"ee397787",
+X"f5f63f83",
+X"9f397787",
 X"3879802e",
-X"81e53883",
+X"83963883",
 X"e0a40883",
 X"e0a00c8b",
 X"df0b83e0",
 X"a80c83e7",
 X"d40851ff",
-X"b5e73ffb",
-X"b53f81c7",
+X"b5a33ffa",
+X"f13f82f8",
 X"3979802e",
-X"81c13883",
+X"82f23883",
 X"e09c0883",
 X"e0a00c8b",
 X"df0b83e0",
 X"a80c83e7",
 X"d00851ff",
-X"b5c33f75",
+X"b4ff3f75",
 X"832e0981",
 X"06943881",
 X"80805382",
 X"80805283",
 X"e7d00851",
-X"fa993f81",
-X"87397584",
+X"f9d53f82",
+X"b8397584",
 X"2e098106",
 X"af388280",
 X"80538180",
 X"805283e7",
 X"d00851f9",
-X"fe3f8054",
+X"ba3f8054",
 X"84828080",
 X"14338481",
 X"80801534",
@@ -2810,18 +2827,18 @@
 X"81145473",
 X"8180802e",
 X"098106e8",
-X"3880d139",
+X"38828239",
 X"75852e09",
-X"810680c8",
+X"810680cb",
 X"38805481",
 X"80805380",
 X"c0805283",
 X"e7d00851",
-X"f9c53f82",
+X"f9813f82",
 X"80805380",
 X"c0805283",
 X"e7d00851",
-X"f9b53f84",
+X"f8f13f84",
 X"81808014",
 X"338481c0",
 X"80153484",
@@ -2831,251 +2848,329 @@
 X"14547380",
 X"c0802e09",
 X"8106dc38",
-X"81548c39",
-X"79873876",
-X"802efac3",
-X"38805473",
-X"83e0800c",
-X"8b3d0d04",
-X"ff3d0df5",
-X"d63f83e0",
-X"8008802e",
-X"86388051",
-X"80dd39f5",
-X"db3f83e0",
-X"800880d1",
-X"38f5fb3f",
+X"81af3975",
+X"862e0981",
+X"0680c138",
+X"81808053",
+X"80c08052",
+X"83e7d008",
+X"51f8b03f",
+X"80558481",
+X"80801554",
+X"73338481",
+X"c0801634",
+X"73338482",
+X"80801634",
+X"73338482",
+X"c0801634",
+X"81155574",
+X"80c0802e",
+X"098106d6",
+X"3880e639",
+X"75872e09",
+X"810680dd",
+X"38818080",
+X"53a08052",
+X"83e7d008",
+X"51f7e83f",
+X"80558481",
+X"80801554",
+X"73338481",
+X"a0801634",
+X"73338481",
+X"c0801634",
+X"73338481",
+X"e0801634",
+X"73338482",
+X"80801634",
+X"73338482",
+X"a0801634",
+X"73338482",
+X"c0801634",
+X"73338482",
+X"e0801634",
+X"81155574",
+X"a0802e09",
+X"8106ffb6",
+X"3881548c",
+X"39798738",
+X"76802ef8",
+X"ce388054",
+X"7383e080",
+X"0c8b3d0d",
+X"04ff3d0d",
+X"f3e13f83",
+X"e0800880",
+X"2e853880",
+X"51bb39f3",
+X"e73f83e0",
+X"8008b038",
+X"f4883f83",
+X"e0800880",
+X"2eb13881",
+X"51f1973f",
+X"edde3f80",
+X"0b83e7bc",
+X"0cf7ff3f",
 X"83e08008",
-X"802eaa38",
-X"8151f38a",
-X"3fefd13f",
-X"800b83e7",
-X"bc0cf9f2",
-X"3f83e080",
-X"0852ff0b",
-X"83e7bc0c",
-X"f1d63f71",
-X"a4387151",
-X"f2e83fa2",
-X"39f5b23f",
+X"52ff0b83",
+X"e7bc0cef",
+X"e33f7180",
+X"2e883881",
+X"51f4da3f",
+X"86397151",
+X"f0ec3f83",
+X"3d0d04fc",
+X"3d0d9080",
+X"80528684",
+X"808051c4",
+X"a93f83e0",
+X"8008b838",
+X"80ebf051",
+X"c8ec3f83",
+X"e0800883",
+X"e7d40854",
+X"80ead853",
 X"83e08008",
-X"802e9738",
-X"8151f2d6",
-X"3fef9d3f",
-X"ff0b83e7",
-X"bc0cf1b0",
-X"3f8151f6",
-X"ac3f833d",
-X"0d04fc3d",
-X"0d908080",
-X"52868480",
-X"8051c682",
+X"5255c3c8",
 X"3f83e080",
-X"08b83880",
-X"e9f051ca",
-X"c53f83e0",
-X"800883e7",
-X"d4085480",
-X"e8d85383",
-X"e0800852",
-X"55c5a13f",
+X"088438f6",
+X"d13f8180",
+X"80548280",
+X"805380ea",
+X"d4527451",
+X"f69b3f81",
+X"51f3fe3f",
+X"fed33ffc",
+X"3983e08c",
+X"080283e0",
+X"8c0cfb3d",
+X"0d0280ea",
+X"e40b83e0",
+X"a40c80ea",
+X"e80b83e0",
+X"9c0c80ea",
+X"ec0b83e0",
+X"ac0c83e0",
+X"8c08fc05",
+X"0c800b83",
+X"e7c00b83",
+X"e08c08f8",
+X"050c83e0",
+X"8c08f405",
+X"0cc2973f",
 X"83e08008",
-X"8438f8aa",
-X"3f818080",
-X"54828080",
-X"5380e8d4",
-X"527451f7",
-X"f43f8151",
-X"f5d73ffe",
-X"b73ffc39",
+X"8605fc06",
 X"83e08c08",
+X"f0050c02",
+X"83e08c08",
+X"f0050831",
+X"0d833d70",
+X"83e08c08",
+X"f8050870",
+X"840583e0",
+X"8c08f805",
+X"0c0c51ff",
+X"bedf3f83",
+X"e08c08f4",
+X"05088105",
+X"83e08c08",
+X"f4050c83",
+X"e08c08f4",
+X"0508872e",
+X"098106ff",
+X"ac388694",
+X"808051eb",
+X"a93fff0b",
+X"83e7bc0c",
+X"800b83e7",
+X"e00c84d8",
+X"c00b83e7",
+X"dc0c8151",
+X"eedc3f81",
+X"51ef813f",
+X"8051eefc",
+X"3f8151ef",
+X"a23f8151",
+X"eff73f82",
+X"51efc53f",
+X"8051f09b",
+X"3f8051f0",
+X"c53f80d0",
+X"c4528051",
+X"ffbc983f",
+X"fdc53f83",
+X"e08c08fc",
+X"05080d80",
+X"0b83e080",
+X"0c873d0d",
+X"83e08c0c",
+X"04fd3d0d",
+X"75548074",
+X"0c800b84",
+X"150c800b",
+X"88150c87",
+X"d0893387",
+X"d08f3370",
+X"822a7081",
+X"06703070",
+X"72077009",
+X"709f2c77",
+X"069e0654",
+X"51515551",
+X"51535380",
+X"72980652",
+X"5370882e",
+X"09810683",
+X"38815370",
+X"98327030",
+X"70802575",
+X"71318418",
+X"0c515151",
+X"80728606",
+X"52537082",
+X"2e098106",
+X"83388153",
+X"70863270",
+X"30708025",
+X"75713177",
+X"0c515151",
+X"71943270",
+X"30708025",
+X"88170c51",
+X"51853d0d",
+X"04fe3d0d",
+X"74765452",
+X"7151feed",
+X"3f72812e",
+X"a2388173",
+X"268d3872",
+X"822eab38",
+X"72832e9f",
+X"38e63971",
+X"08e23884",
+X"1208dd38",
+X"881208d8",
+X"38a03988",
+X"1208812e",
+X"098106cc",
+X"38943988",
+X"1208812e",
+X"8d387108",
+X"89388412",
+X"08802eff",
+X"b738843d",
+X"0d0483e0",
+X"8c080283",
+X"e08c0cfd",
+X"3d0d8053",
+X"83e08c08",
+X"8c050852",
+X"83e08c08",
+X"88050851",
+X"83d43f83",
+X"e0800870",
+X"83e0800c",
+X"54853d0d",
+X"83e08c0c",
+X"0483e08c",
+X"080283e0",
+X"8c0cfd3d",
+X"0d815383",
+X"e08c088c",
+X"05085283",
+X"e08c0888",
+X"05085183",
+X"a13f83e0",
+X"80087083",
+X"e0800c54",
+X"853d0d83",
+X"e08c0c04",
+X"83e08c08",
 X"0283e08c",
-X"0cfb3d0d",
-X"0280e8e4",
-X"0b83e0a4",
-X"0c80e8e8",
-X"0b83e09c",
-X"0c80e8ec",
-X"0b83e0ac",
+X"0cf93d0d",
+X"800b83e0",
+X"8c08fc05",
 X"0c83e08c",
-X"08fc050c",
-X"800b83e7",
-X"c00b83e0",
-X"8c08f805",
-X"0c83e08c",
+X"08880508",
+X"8025b938",
+X"83e08c08",
+X"88050830",
+X"83e08c08",
+X"88050c80",
+X"0b83e08c",
 X"08f4050c",
-X"c3f03f83",
-X"e0800886",
-X"05fc0683",
-X"e08c08f0",
-X"050c0283",
-X"e08c08f0",
-X"0508310d",
-X"833d7083",
-X"e08c08f8",
-X"05087084",
-X"0583e08c",
-X"08f8050c",
-X"0c51c0b9",
-X"3f83e08c",
-X"08f40508",
-X"810583e0",
+X"83e08c08",
+X"fc05088a",
+X"38810b83",
+X"e08c08f4",
+X"050c83e0",
 X"8c08f405",
+X"0883e08c",
+X"08fc050c",
+X"83e08c08",
+X"8c050880",
+X"25b93883",
+X"e08c088c",
+X"05083083",
+X"e08c088c",
+X"050c800b",
+X"83e08c08",
+X"f0050c83",
+X"e08c08fc",
+X"05088a38",
+X"810b83e0",
+X"8c08f005",
 X"0c83e08c",
-X"08f40508",
-X"872e0981",
-X"06ffad38",
-X"86948080",
-X"51ed833f",
-X"ff0b83e7",
-X"bc0c800b",
-X"83e7e00c",
-X"84d8c00b",
-X"83e7dc0c",
-X"8151f0b6",
-X"3f8151f0",
-X"db3f8051",
-X"f0d63f81",
-X"51f0fc3f",
-X"8151f1d1",
-X"3f8251f1",
-X"9f3f8051",
-X"f1f53f80",
-X"51f29f3f",
-X"80d0c452",
-X"8051ffbd",
-X"f23ffdc6",
-X"3f83e08c",
-X"08fc0508",
-X"0d800b83",
-X"e0800c87",
-X"3d0d83e0",
-X"8c0c04fd",
-X"3d0d7554",
-X"80740c80",
-X"0b84150c",
-X"800b8815",
-X"0c87d089",
-X"3387d08f",
-X"3370822a",
-X"70810670",
-X"30707207",
-X"7009709f",
-X"2c77069e",
-X"06545151",
-X"55515153",
-X"53807298",
-X"06525370",
-X"882e0981",
-X"06833881",
-X"53709832",
-X"70307080",
-X"25757131",
-X"84180c51",
-X"51518072",
-X"86065253",
-X"70822e09",
-X"81068338",
-X"81537086",
-X"32703070",
-X"80257571",
-X"31770c51",
-X"51517194",
-X"32703070",
-X"80258817",
-X"0c515185",
-X"3d0d04fe",
-X"3d0d7476",
-X"54527151",
-X"feed3f72",
-X"812ea238",
-X"8173268d",
-X"3872822e",
-X"ab387283",
-X"2e9f38e6",
-X"397108e2",
-X"38841208",
-X"dd388812",
-X"08d838a0",
-X"39881208",
-X"812e0981",
-X"06cc3894",
-X"39881208",
-X"812e8d38",
-X"71088938",
-X"84120880",
-X"2effb738",
-X"843d0d04",
+X"08f00508",
 X"83e08c08",
-X"0283e08c",
-X"0cfd3d0d",
-X"805383e0",
-X"8c088c05",
-X"085283e0",
-X"8c088805",
-X"085183d4",
-X"3f83e080",
-X"087083e0",
-X"800c5485",
-X"3d0d83e0",
-X"8c0c0483",
-X"e08c0802",
-X"83e08c0c",
-X"fd3d0d81",
+X"fc050c80",
 X"5383e08c",
 X"088c0508",
 X"5283e08c",
 X"08880508",
-X"5183a13f",
+X"5181df3f",
 X"83e08008",
-X"7083e080",
-X"0c54853d",
-X"0d83e08c",
-X"0c0483e0",
-X"8c080283",
-X"e08c0cf9",
-X"3d0d800b",
+X"7083e08c",
+X"08f8050c",
+X"5483e08c",
+X"08fc0508",
+X"802e9038",
 X"83e08c08",
-X"fc050c83",
-X"e08c0888",
-X"05088025",
-X"b93883e0",
-X"8c088805",
-X"083083e0",
-X"8c088805",
-X"0c800b83",
-X"e08c08f4",
-X"050c83e0",
-X"8c08fc05",
-X"088a3881",
-X"0b83e08c",
-X"08f4050c",
+X"f8050830",
 X"83e08c08",
-X"f4050883",
-X"e08c08fc",
-X"050c83e0",
-X"8c088c05",
-X"088025b9",
-X"3883e08c",
-X"088c0508",
-X"3083e08c",
-X"088c050c",
+X"f8050c83",
+X"e08c08f8",
+X"05087083",
+X"e0800c54",
+X"893d0d83",
+X"e08c0c04",
+X"83e08c08",
+X"0283e08c",
+X"0cfb3d0d",
 X"800b83e0",
-X"8c08f005",
+X"8c08fc05",
 X"0c83e08c",
-X"08fc0508",
-X"8a38810b",
+X"08880508",
+X"80259938",
 X"83e08c08",
-X"f0050c83",
-X"e08c08f0",
-X"050883e0",
-X"8c08fc05",
-X"0c805383",
+X"88050830",
+X"83e08c08",
+X"88050c81",
+X"0b83e08c",
+X"08fc050c",
+X"83e08c08",
+X"8c050880",
+X"25903883",
 X"e08c088c",
-X"05085283",
-X"e08c0888",
-X"05085181",
-X"df3f83e0",
+X"05083083",
+X"e08c088c",
+X"050c8153",
+X"83e08c08",
+X"8c050852",
+X"83e08c08",
+X"88050851",
+X"bd3f83e0",
 X"80087083",
 X"e08c08f8",
 X"050c5483",
@@ -3088,189 +3183,148 @@
 X"0c83e08c",
 X"08f80508",
 X"7083e080",
-X"0c54893d",
+X"0c54873d",
 X"0d83e08c",
 X"0c0483e0",
 X"8c080283",
-X"e08c0cfb",
-X"3d0d800b",
+X"e08c0cfd",
+X"3d0d810b",
 X"83e08c08",
-X"fc050c83",
+X"fc050c80",
+X"0b83e08c",
+X"08f8050c",
+X"83e08c08",
+X"8c050883",
 X"e08c0888",
-X"05088025",
-X"993883e0",
-X"8c088805",
-X"083083e0",
-X"8c088805",
-X"0c810b83",
+X"050827b9",
+X"3883e08c",
+X"08fc0508",
+X"802eae38",
+X"800b83e0",
+X"8c088c05",
+X"0824a238",
+X"83e08c08",
+X"8c050810",
+X"83e08c08",
+X"8c050c83",
 X"e08c08fc",
-X"050c83e0",
-X"8c088c05",
-X"08802590",
+X"05081083",
+X"e08c08fc",
+X"050cffb8",
+X"3983e08c",
+X"08fc0508",
+X"802e80e1",
 X"3883e08c",
 X"088c0508",
-X"3083e08c",
-X"088c050c",
-X"815383e0",
-X"8c088c05",
-X"085283e0",
+X"83e08c08",
+X"88050826",
+X"ad3883e0",
 X"8c088805",
-X"0851bd3f",
-X"83e08008",
-X"7083e08c",
-X"08f8050c",
-X"5483e08c",
-X"08fc0508",
-X"802e9038",
+X"0883e08c",
+X"088c0508",
+X"3183e08c",
+X"0888050c",
 X"83e08c08",
-X"f8050830",
-X"83e08c08",
-X"f8050c83",
+X"f8050883",
+X"e08c08fc",
+X"05080783",
 X"e08c08f8",
-X"05087083",
-X"e0800c54",
-X"873d0d83",
-X"e08c0c04",
-X"83e08c08",
-X"0283e08c",
-X"0cfd3d0d",
-X"810b83e0",
+X"050c83e0",
 X"8c08fc05",
-X"0c800b83",
-X"e08c08f8",
+X"08812a83",
+X"e08c08fc",
 X"050c83e0",
 X"8c088c05",
-X"0883e08c",
-X"08880508",
-X"27b93883",
-X"e08c08fc",
-X"0508802e",
-X"ae38800b",
-X"83e08c08",
-X"8c050824",
-X"a23883e0",
-X"8c088c05",
-X"081083e0",
-X"8c088c05",
-X"0c83e08c",
-X"08fc0508",
-X"1083e08c",
-X"08fc050c",
-X"ffb83983",
-X"e08c08fc",
-X"0508802e",
-X"80e13883",
+X"08812a83",
 X"e08c088c",
-X"050883e0",
-X"8c088805",
-X"0826ad38",
+X"050cff95",
+X"3983e08c",
+X"08900508",
+X"802e9338",
 X"83e08c08",
-X"88050883",
-X"e08c088c",
-X"05083183",
-X"e08c0888",
-X"050c83e0",
+X"88050870",
+X"83e08c08",
+X"f4050c51",
+X"913983e0",
 X"8c08f805",
-X"0883e08c",
-X"08fc0508",
-X"0783e08c",
-X"08f8050c",
-X"83e08c08",
-X"fc050881",
-X"2a83e08c",
-X"08fc050c",
-X"83e08c08",
-X"8c050881",
-X"2a83e08c",
-X"088c050c",
-X"ff953983",
-X"e08c0890",
-X"0508802e",
-X"933883e0",
-X"8c088805",
 X"087083e0",
 X"8c08f405",
-X"0c519139",
+X"0c5183e0",
+X"8c08f405",
+X"0883e080",
+X"0c853d0d",
+X"83e08c0c",
+X"0483e08c",
+X"080283e0",
+X"8c0cff3d",
+X"0d800b83",
+X"e08c08fc",
+X"050c83e0",
+X"8c088805",
+X"088106ff",
+X"11700970",
 X"83e08c08",
-X"f8050870",
+X"8c050806",
 X"83e08c08",
-X"f4050c51",
+X"fc050811",
 X"83e08c08",
-X"f4050883",
-X"e0800c85",
-X"3d0d83e0",
-X"8c0c0483",
-X"e08c0802",
-X"83e08c0c",
-X"ff3d0d80",
-X"0b83e08c",
-X"08fc050c",
+X"fc050c83",
+X"e08c0888",
+X"0508812a",
 X"83e08c08",
-X"88050881",
-X"06ff1170",
-X"097083e0",
-X"8c088c05",
-X"080683e0",
-X"8c08fc05",
-X"081183e0",
-X"8c08fc05",
-X"0c83e08c",
-X"08880508",
-X"812a83e0",
+X"88050c83",
+X"e08c088c",
+X"05081083",
+X"e08c088c",
+X"050c5151",
+X"515183e0",
 X"8c088805",
-X"0c83e08c",
-X"088c0508",
-X"1083e08c",
-X"088c050c",
-X"51515151",
+X"08802e84",
+X"38ffab39",
 X"83e08c08",
-X"88050880",
-X"2e8438ff",
-X"ab3983e0",
-X"8c08fc05",
-X"087083e0",
-X"800c5183",
-X"3d0d83e0",
-X"8c0c04fc",
-X"3d0d7670",
-X"797b5555",
-X"55558f72",
-X"278c3872",
-X"75078306",
-X"5170802e",
-X"a938ff12",
-X"5271ff2e",
-X"98387270",
-X"81055433",
-X"74708105",
-X"5634ff12",
-X"5271ff2e",
-X"098106ea",
-X"387483e0",
-X"800c863d",
-X"0d047451",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"72708405",
-X"54087170",
-X"8405530c",
-X"f0125271",
-X"8f26c938",
-X"83722795",
-X"38727084",
-X"05540871",
-X"70840553",
-X"0cfc1252",
-X"718326ed",
-X"387054ff",
-X"81390000",
+X"fc050870",
+X"83e0800c",
+X"51833d0d",
+X"83e08c0c",
+X"04fc3d0d",
+X"7670797b",
+X"55555555",
+X"8f72278c",
+X"38727507",
+X"83065170",
+X"802ea938",
+X"ff125271",
+X"ff2e9838",
+X"72708105",
+X"54337470",
+X"81055634",
+X"ff125271",
+X"ff2e0981",
+X"06ea3874",
+X"83e0800c",
+X"863d0d04",
+X"74517270",
+X"84055408",
+X"71708405",
+X"530c7270",
+X"84055408",
+X"71708405",
+X"530c7270",
+X"84055408",
+X"71708405",
+X"530c7270",
+X"84055408",
+X"71708405",
+X"530cf012",
+X"52718f26",
+X"c9388372",
+X"27953872",
+X"70840554",
+X"08717084",
+X"05530cfc",
+X"12527183",
+X"26ed3870",
+X"54ff8139",
 X"00ffffff",
 X"ff00ffff",
 X"ffff00ff",
@@ -3316,13 +3370,15 @@
 X"02020202",
 X"02020241",
 X"00060000",
-X"00002aa8",
-X"00002ae9",
-X"00002b0a",
-X"00002b31",
-X"00002b31",
-X"00002b31",
-X"00002bf4",
+X"00002aec",
+X"00002b2d",
+X"00002b4e",
+X"00002b75",
+X"00002b75",
+X"00002b75",
+X"00002b75",
+X"00002b75",
+X"00002ce9",
 X"25732025",
 X"73000000",
 X"20000000",
@@ -3366,6 +3422,14 @@
 X"6b207477",
 X"6f206368",
 X"69700000",
+X"43617274",
+X"72696467",
+X"6520386b",
+X"00000000",
+X"43617274",
+X"72696467",
+X"6520346b",
+X"00000000",
 X"45786974",
 X"00000000",
 X"61636964",
@@ -3465,70 +3529,6 @@
 X"00000000",
 X"00000000",
 X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
-X"00000000",
 X"00000000",
 X"00000000",
 X"00000000",
