1-- (c) bel2125, 2010 2-- MIT public licence 3 4 5local letterCode = { 6 [' '] = {0,0,0,0,0}, 7 ['!'] = {0,0,95,0,0}, 8 ['"'] = {0,3,4,3,0}, 9 ['#'] = {34,127,34,127,34}, 10 ['$'] = {36,42,127,42,18}, 11 ['%'] = {35,19,8,100,98}, 12 ['&'] = {54,73,85,34,80}, 13 ["'"] = {0,11,7,0,0}, 14 ['('] = {0,28,34,65,0}, 15 [')'] = {0,65,34,28,0}, 16 ['*'] = {20,8,62,8,20}, 17 ['+'] = {8,8,62,8,8}, 18 [','] = {0,88,56,0,0}, 19 ['-'] = {8,8,8,8,8}, 20 ['.'] = {0,96,96,0,0}, 21 ['/'] = {32,16,8,4,2}, 22 ['0'] = {62,81,73,69,62}, 23 ['1'] = {0,66,127,64,0}, 24 ['2'] = {66,97,81,73,70}, 25 ['3'] = {65,73,77,75,49}, 26 ['4'] = {24,20,18,127,16}, 27 ['5'] = {39,69,69,69,57}, 28 ['6'] = {60,74,73,73,48}, 29 ['7'] = {1,1,121,5,3}, 30 ['8'] = {54,73,73,73,54}, 31 ['9'] = {6,73,73,41,30}, 32 [':'] = {0,54,54,0,0}, 33 [';'] = {0,91,59,0,0}, 34 ['<'] = {8,20,34,65,0}, 35 ['='] = {20,20,20,20,20}, 36 ['>'] = {0,65,34,20,8}, 37 ['?'] = {2,1,81,9,6}, 38 ['@'] = {50,73,121,65,62}, 39 ['A'] = {124,18,17,18,124}, 40 ['B'] = {65,127,73,73,54}, 41 ['C'] = {62,65,65,65,34}, 42 ['D'] = {65,127,65,65,62}, 43 ['E'] = {127,73,73,73,65}, 44 ['F'] = {127,9,9,9,1}, 45 ['G'] = {62,65,65,73,57}, 46 ['H'] = {127,8,8,8,127}, 47 ['I'] = {0,65,127,65,0}, 48 ['J'] = {32,64,65,63,1}, 49 ['K'] = {127,8,20,34,65}, 50 ['L'] = {127,64,64,64,64}, 51 ['M'] = {127,2,12,2,127}, 52 ['N'] = {127,4,8,16,127}, 53 ['O'] = {62,65,65,65,62}, 54 ['P'] = {127,9,9,9,6}, 55 ['Q'] = {62,65,81,33,94}, 56 ['R'] = {127,9,25,41,70}, 57 ['S'] = {38,73,73,73,50}, 58 ['T'] = {1,1,127,1,1}, 59 ['U'] = {63,64,64,64,63}, 60 ['V'] = {7,24,96,24,7}, 61 ['W'] = {127,32,24,32,127}, 62 ['X'] = {99,20,8,20,99}, 63 ['Y'] = {3,4,120,4,3}, 64 ['Z'] = {97,81,73,69,67}, 65 ['['] = {0,127,65,65,0}, 66 ['\\'] = {2,4,8,16,32}, 67 [']'] = {0,65,65,127,0}, 68 ['^'] = {24,4,2,4,24}, 69 ['_'] = {64,64,64,64,64}, 70 ['`'] = {0,0,7,11,0}, 71 ['a'] = {56,68,68,60,64}, 72 ['b'] = {127,72,68,68,56}, 73 ['c'] = {56,68,68,68,32}, 74 ['d'] = {56,68,68,72,127}, 75 ['e'] = {56,84,84,84,24}, 76 ['f'] = {0,8,126,9,2}, 77 ['g'] = {8,84,84,60,0}, 78 ['h'] = {127,4,4,120,0}, 79 ['i'] = {0,0,125,0,0}, 80 ['j'] = {32,64,68,61,0}, 81 ['k'] = {127,16,40,68,0}, 82 ['l'] = {0,0,127,0,0}, 83 ['m'] = {120,4,120,4,120}, 84 ['n'] = {124,8,4,4,120}, 85 ['o'] = {56,68,68,68,56}, 86 ['p'] = {124,20,20,20,8}, 87 ['q'] = {24,36,20,124,64}, 88 ['r'] = {124,8,4,4,0}, 89 ['s'] = {72,84,84,84,32}, 90 ['t'] = {4,62,68,32,0}, 91 ['u'] = {60,64,64,32,124}, 92 ['v'] = {28,32,64,32,28}, 93 ['w'] = {60,64,48,64,60}, 94 ['x'] = {68,36,124,72,68}, 95 ['y'] = {12,80,80,60,0}, 96 ['z'] = {68,100,84,76,68}, 97 ['{'] = {0,8,54,65,0}, 98 ['|'] = {0,0,119,0,0}, 99 ['}'] = {0,65,54,8,0}, 100 ['~'] = {8,4,8,16,8}, 101}; 102 103letterCode['('] = {0,60,66,129,0} 104letterCode[')'] = {0,129,66,60,0} 105letterCode[','] = {0,176,112,0,0} 106letterCode[';'] = {0,182,118,0,0} 107letterCode['['] = {0,255,129,129,0} 108letterCode[']'] = {0,129,129,255,0} 109letterCode['_'] = {128,128,128,128,128} 110letterCode['g'] = {24,164,164,124,0} 111letterCode['j'] = {64,128,132,125,0} 112letterCode['p'] = {252,36,36,36,24} 113letterCode['q'] = {24,36,36,252,128} 114letterCode['y'] = {12,80,80,60,0} 115letterCode['{'] = {0,24,102,129,0} 116letterCode['}'] = {0,129,102,24,0} 117 118 119local function HugeLetter(letter) 120 if letter==' ' then return {" ", " ", " ", " ", " ", " ", " ", " "} end 121 local code = letterCode[letter] 122 local str = {"", "", "", "", "", "", "", ""} 123 for i=1,5 do 124 local n = code[i] 125 if n and n>0 then 126 for b=1,8 do 127 if bit32.btest(n, bit32.lshift(1, b-1)) then str[b] = str[b] .. letter else str[b] = str[b] .. ' ' end 128 end 129 end 130 end 131 return str 132end 133 134function HugeText(str) 135 local txt = {"", "", "", "", "", "", "", ""} 136 for i=1,string.len(str) do 137 local s = HugeLetter(str:sub(i,i)) 138 for b=1,8 do 139 if i>1 then 140 txt[b] = txt[b] .. " " .. s[b] 141 else 142 txt[b] = txt[b] .. s[b] 143 end 144 end 145 end 146 return txt 147end 148 149return HugeText 150