---------------------------------------------------------------------------------- -- Company: -- Engineer: -- -- Create Date: 28.06.2021 09:20:00 -- Design Name: -- Module Name: TableASCII - Behavioral -- Project Name: -- Target Devices: -- Tool Versions: -- Description: -- -- Dependencies: -- -- Revision: -- Revision 0.01 - File Created -- Additional Comments: -- ---------------------------------------------------------------------------------- library IEEE; use IEEE.STD_LOGIC_1164.ALL; Library UNISIM; use UNISIM.vcomponents.all; Library UNIMACRO; use UNIMACRO.vcomponents.all; use work.font.all; entity TableASCII is Port ( CodeASCII : Natural; Font : out font_T); end TableASCII; architecture Behavioral of TableASCII is type FontMemory_T is array (0 to 127) of font_T; signal FontMemory : FontMemory_T := ( ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0000 (nul) ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0001 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0002 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0003 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0004 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0005 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0006 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0007 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0008 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0009 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+000A ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+000B ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+000C ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+000D ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+000E ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+000F ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0010 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0011 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0012 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0013 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0014 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0015 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0016 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0017 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0018 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0019 ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+001A ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+001B ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+001C ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+001D ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+001E ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+001F ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0020 (space) ( x"18", x"3C", x"3C", x"18", x"18", x"00", x"18", x"00"), -- U+0021 (!) ( x"36", x"36", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+0022 (") ( x"36", x"36", x"7F", x"36", x"7F", x"36", x"36", x"00"), -- U+0023 (#) ( x"0C", x"3E", x"03", x"1E", x"30", x"1F", x"0C", x"00"), -- U+0024 ($) ( x"00", x"63", x"33", x"18", x"0C", x"66", x"63", x"00"), -- U+0025 (%) ( x"1C", x"36", x"1C", x"6E", x"3B", x"33", x"6E", x"00"), -- U+0026 (&) ( x"06", x"06", x"03", x"00", x"00", x"00", x"00", x"00"), -- U+0027 (') ( x"18", x"0C", x"06", x"06", x"06", x"0C", x"18", x"00"), -- U+0028 (() ( x"06", x"0C", x"18", x"18", x"18", x"0C", x"06", x"00"), -- U+0029 ()) ( x"00", x"66", x"3C", x"FF", x"3C", x"66", x"00", x"00"), -- U+002A (*) ( x"00", x"0C", x"0C", x"3F", x"0C", x"0C", x"00", x"00"), -- U+002B (+) ( x"00", x"00", x"00", x"00", x"00", x"0C", x"0C", x"06"), -- U+002C (,) ( x"00", x"00", x"00", x"3F", x"00", x"00", x"00", x"00"), -- U+002D (-) ( x"00", x"00", x"00", x"00", x"00", x"0C", x"0C", x"00"), -- U+002E (.) ( x"60", x"30", x"18", x"0C", x"06", x"03", x"01", x"00"), -- U+002F (/) ( x"3E", x"63", x"73", x"7B", x"6F", x"67", x"3E", x"00"), -- U+0030 (0) ( x"0C", x"0E", x"0C", x"0C", x"0C", x"0C", x"3F", x"00"), -- U+0031 (1) ( x"1E", x"33", x"30", x"1C", x"06", x"33", x"3F", x"00"), -- U+0032 (2) ( x"1E", x"33", x"30", x"1C", x"30", x"33", x"1E", x"00"), -- U+0033 (3) ( x"38", x"3C", x"36", x"33", x"7F", x"30", x"78", x"00"), -- U+0034 (4) ( x"3F", x"03", x"1F", x"30", x"30", x"33", x"1E", x"00"), -- U+0035 (5) ( x"1C", x"06", x"03", x"1F", x"33", x"33", x"1E", x"00"), -- U+0036 (6) ( x"3F", x"33", x"30", x"18", x"0C", x"0C", x"0C", x"00"), -- U+0037 (7) ( x"1E", x"33", x"33", x"1E", x"33", x"33", x"1E", x"00"), -- U+0038 (8) ( x"1E", x"33", x"33", x"3E", x"30", x"18", x"0E", x"00"), -- U+0039 (9) ( x"00", x"0C", x"0C", x"00", x"00", x"0C", x"0C", x"00"), -- U+003A (:) ( x"00", x"0C", x"0C", x"00", x"00", x"0C", x"0C", x"06"), -- U+003B (--) ( x"18", x"0C", x"06", x"03", x"06", x"0C", x"18", x"00"), -- U+003C (<) ( x"00", x"00", x"3F", x"00", x"00", x"3F", x"00", x"00"), -- U+003D (=) ( x"06", x"0C", x"18", x"30", x"18", x"0C", x"06", x"00"), -- U+003E (>) ( x"1E", x"33", x"30", x"18", x"0C", x"00", x"0C", x"00"), -- U+003F (?) ( x"3E", x"63", x"7B", x"7B", x"7B", x"03", x"1E", x"00"), -- U+0040 (@) ( x"0C", x"1E", x"33", x"33", x"3F", x"33", x"33", x"00"), -- U+0041 (A) ( x"3F", x"66", x"66", x"3E", x"66", x"66", x"3F", x"00"), -- U+0042 (B) ( x"3C", x"66", x"03", x"03", x"03", x"66", x"3C", x"00"), -- U+0043 (C) ( x"1F", x"36", x"66", x"66", x"66", x"36", x"1F", x"00"), -- U+0044 (D) ( x"7F", x"46", x"16", x"1E", x"16", x"46", x"7F", x"00"), -- U+0045 (E) ( x"7F", x"46", x"16", x"1E", x"16", x"06", x"0F", x"00"), -- U+0046 (F) ( x"3C", x"66", x"03", x"03", x"73", x"66", x"7C", x"00"), -- U+0047 (G) ( x"33", x"33", x"33", x"3F", x"33", x"33", x"33", x"00"), -- U+0048 (H) ( x"1E", x"0C", x"0C", x"0C", x"0C", x"0C", x"1E", x"00"), -- U+0049 (I) ( x"78", x"30", x"30", x"30", x"33", x"33", x"1E", x"00"), -- U+004A (J) ( x"67", x"66", x"36", x"1E", x"36", x"66", x"67", x"00"), -- U+004B (K) ( x"0F", x"06", x"06", x"06", x"46", x"66", x"7F", x"00"), -- U+004C (L) ( x"63", x"77", x"7F", x"7F", x"6B", x"63", x"63", x"00"), -- U+004D (M) ( x"63", x"67", x"6F", x"7B", x"73", x"63", x"63", x"00"), -- U+004E (N) ( x"1C", x"36", x"63", x"63", x"63", x"36", x"1C", x"00"), -- U+004F (O) ( x"3F", x"66", x"66", x"3E", x"06", x"06", x"0F", x"00"), -- U+0050 (P) ( x"1E", x"33", x"33", x"33", x"3B", x"1E", x"38", x"00"), -- U+0051 (Q) ( x"3F", x"66", x"66", x"3E", x"36", x"66", x"67", x"00"), -- U+0052 (R) ( x"1E", x"33", x"07", x"0E", x"38", x"33", x"1E", x"00"), -- U+0053 (S) ( x"3F", x"2D", x"0C", x"0C", x"0C", x"0C", x"1E", x"00"), -- U+0054 (T) ( x"33", x"33", x"33", x"33", x"33", x"33", x"3F", x"00"), -- U+0055 (U) ( x"33", x"33", x"33", x"33", x"33", x"1E", x"0C", x"00"), -- U+0056 (V) ( x"63", x"63", x"63", x"6B", x"7F", x"77", x"63", x"00"), -- U+0057 (W) ( x"63", x"63", x"36", x"1C", x"1C", x"36", x"63", x"00"), -- U+0058 (X) ( x"33", x"33", x"33", x"1E", x"0C", x"0C", x"1E", x"00"), -- U+0059 (Y) ( x"7F", x"63", x"31", x"18", x"4C", x"66", x"7F", x"00"), -- U+005A (Z) ( x"1E", x"06", x"06", x"06", x"06", x"06", x"1E", x"00"), -- U+005B ([) ( x"03", x"06", x"0C", x"18", x"30", x"60", x"40", x"00"), -- U+005C (\) ( x"1E", x"18", x"18", x"18", x"18", x"18", x"1E", x"00"), -- U+005D (]) ( x"08", x"1C", x"36", x"63", x"00", x"00", x"00", x"00"), -- U+005E (^) ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"FF"), -- U+005F (_) ( x"0C", x"0C", x"18", x"00", x"00", x"00", x"00", x"00"), -- U+0060 (`) ( x"00", x"00", x"1E", x"30", x"3E", x"33", x"6E", x"00"), -- U+0061 (a) ( x"07", x"06", x"06", x"3E", x"66", x"66", x"3B", x"00"), -- U+0062 (b) ( x"00", x"00", x"1E", x"33", x"03", x"33", x"1E", x"00"), -- U+0063 (c) ( x"38", x"30", x"30", x"3e", x"33", x"33", x"6E", x"00"), -- U+0064 (d) ( x"00", x"00", x"1E", x"33", x"3f", x"03", x"1E", x"00"), -- U+0065 (e) ( x"1C", x"36", x"06", x"0f", x"06", x"06", x"0F", x"00"), -- U+0066 (f) ( x"00", x"00", x"6E", x"33", x"33", x"3E", x"30", x"1F"), -- U+0067 (g) ( x"07", x"06", x"36", x"6E", x"66", x"66", x"67", x"00"), -- U+0068 (h) ( x"0C", x"00", x"0E", x"0C", x"0C", x"0C", x"1E", x"00"), -- U+0069 (i) ( x"30", x"00", x"30", x"30", x"30", x"33", x"33", x"1E"), -- U+006A (j) ( x"07", x"06", x"66", x"36", x"1E", x"36", x"67", x"00"), -- U+006B (k) ( x"0E", x"0C", x"0C", x"0C", x"0C", x"0C", x"1E", x"00"), -- U+006C (l) ( x"00", x"00", x"33", x"7F", x"7F", x"6B", x"63", x"00"), -- U+006D (m) ( x"00", x"00", x"1F", x"33", x"33", x"33", x"33", x"00"), -- U+006E (n) ( x"00", x"00", x"1E", x"33", x"33", x"33", x"1E", x"00"), -- U+006F (o) ( x"00", x"00", x"3B", x"66", x"66", x"3E", x"06", x"0F"), -- U+0070 (p) ( x"00", x"00", x"6E", x"33", x"33", x"3E", x"30", x"78"), -- U+0071 (q) ( x"00", x"00", x"3B", x"6E", x"66", x"06", x"0F", x"00"), -- U+0072 (r) ( x"00", x"00", x"3E", x"03", x"1E", x"30", x"1F", x"00"), -- U+0073 (s) ( x"08", x"0C", x"3E", x"0C", x"0C", x"2C", x"18", x"00"), -- U+0074 (t) ( x"00", x"00", x"33", x"33", x"33", x"33", x"6E", x"00"), -- U+0075 (u) ( x"00", x"00", x"33", x"33", x"33", x"1E", x"0C", x"00"), -- U+0076 (v) ( x"00", x"00", x"63", x"6B", x"7F", x"7F", x"36", x"00"), -- U+0077 (w) ( x"00", x"00", x"63", x"36", x"1C", x"36", x"63", x"00"), -- U+0078 (x) ( x"00", x"00", x"33", x"33", x"33", x"3E", x"30", x"1F"), -- U+0079 (y) ( x"00", x"00", x"3F", x"19", x"0C", x"26", x"3F", x"00"), -- U+007A (z) ( x"38", x"0C", x"0C", x"07", x"0C", x"0C", x"38", x"00"), -- U+007B (() ( x"18", x"18", x"18", x"00", x"18", x"18", x"18", x"00"), -- U+007C (|) ( x"07", x"0C", x"0C", x"38", x"0C", x"0C", x"07", x"00"), -- U+007D ()) ( x"6E", x"3B", x"00", x"00", x"00", x"00", x"00", x"00"), -- U+007E (~) ( x"00", x"00", x"00", x"00", x"00", x"00", x"00", x"00") -- U+007F ); begin Font <= FontMemory(CodeASCII); end Behavioral;