IO_LOC "clk" 4;
CLOCK_LOC "clk" BUFG;

IO_LOC "led[0]" 15;
IO_LOC "led[1]" 16;
IO_LOC "led[2]" 17;
IO_LOC "led[3]" 18;
IO_LOC "led[4]" 19;
IO_LOC "led[5]" 20;

IO_LOC "clk_i" 4;
CLOCK_LOC "clk_i" BUFG;

IO_LOC "key_i" 87;
IO_PORT "key_i" IO_TYPE=LVCMOS33;
IO_LOC "rst_i" 88;
IO_PORT "rst_i" IO_TYPE=LVCMOS33;

// USB-C UART
IO_LOC "TXD" 69;
IO_PORT "TXD" PULL_MODE=NONE;
IO_LOC "RXD" 70;
IO_PORT "RXD" PULL_MODE=NONE;

IO_LOC "LED_R" 15;
IO_LOC "LED_G" 16;
IO_LOC "LED_B" 17;

IO_LOC "tlvds_p" 25;
IO_LOC "tlvds_n" 26;

IO_LOC "elvds_p" 56;
IO_LOC "elvds_n" 55;

// fake
IO_LOC "led[6]" 35;
IO_LOC "led[7]" 33;

// oser
IO_LOC "oser_out" 15;
IO_LOC "pclk_o"   17;
IO_LOC "fclk_o"   18;

// ides
IO_LOC "fclk_i" 25;
IO_LOC "data_i" 27;
IO_LOC "q_o[0]" 29;
IO_LOC "q_o[1]" 30;
IO_LOC "q_o[2]" 31;
IO_LOC "q_o[3]" 48;
IO_LOC "q_o[4]" 20;
IO_LOC "q_o[5]" 19;
IO_LOC "q_o[6]" 18;
IO_LOC "q_o[7]" 16;

// RGB LCD
IO_LOC "LCD_CLK"  77;
IO_LOC "LCD_HYNC" 25;
IO_LOC "LCD_SYNC" 26;
IO_LOC "LCD_DEN"  48;
IO_LOC "LCD_R[0]" 42;
IO_LOC "LCD_R[1]" 41;
IO_LOC "LCD_R[2]" 40;
IO_LOC "LCD_R[3]" 39;
IO_LOC "LCD_R[4]" 38;

IO_LOC "LCD_G[0]" 37;
IO_LOC "LCD_G[1]" 36;
IO_LOC "LCD_G[2]" 35;
IO_LOC "LCD_G[3]" 34;
IO_LOC "LCD_G[4]" 33;
IO_LOC "LCD_G[5]" 32;

IO_LOC "LCD_B[0]" 31;
IO_LOC "LCD_B[1]" 30;
IO_LOC "LCD_B[2]" 29;
IO_LOC "LCD_B[3]" 28;
IO_LOC "LCD_B[4]" 27;

IO_PORT "LCD_CLK"  IO_TYPE=LVCMOS33;
IO_PORT "LCD_HYNC" IO_TYPE=LVCMOS33;
IO_PORT "LCD_SYNC" IO_TYPE=LVCMOS33;
IO_PORT "LCD_DEN"  IO_TYPE=LVCMOS33;
IO_PORT "LCD_R[0]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_R[1]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_R[2]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_R[3]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_R[4]" IO_TYPE=LVCMOS33 DRIVE=24;

IO_PORT "LCD_G[0]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_G[1]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_G[2]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_G[3]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_G[4]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_G[5]" IO_TYPE=LVCMOS33 DRIVE=24;

IO_PORT "LCD_B[0]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_B[1]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_B[2]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_B[3]" IO_TYPE=LVCMOS33 DRIVE=24;
IO_PORT "LCD_B[4]" IO_TYPE=LVCMOS33 DRIVE=24;

// DVI
IO_LOC "tmds_clk_p" 33;
IO_PORT "tmds_clk_p" PULL_MODE=NONE;
IO_LOC "tmds_clk_n" 34;
IO_PORT "tmds_clk_n" PULL_MODE=NONE;
IO_LOC "tmds_d_p[0]" 35;
IO_PORT "tmds_d_p[0]" PULL_MODE=NONE;
IO_LOC "tmds_d_n[0]" 36;
IO_PORT "tmds_d_n[0]" PULL_MODE=NONE;
IO_LOC "tmds_d_p[1]" 37;
IO_PORT "tmds_d_p[1]" PULL_MODE=NONE;
IO_LOC "tmds_d_n[1]" 38;
IO_PORT "tmds_d_n[1]" PULL_MODE=NONE;
IO_LOC "tmds_d_p[2]" 39;
IO_PORT "tmds_d_p[2]" PULL_MODE=NONE;
IO_LOC "tmds_d_n[2]" 40;
IO_PORT "tmds_d_n[2]" PULL_MODE=NONE;

IO_LOC "div_led" 15;
