Driver for a 128x64 pixels graphic LCD panel based on a KS0723 driver from Samsung.

Committer:
hilgo
Date:
Sun Feb 20 12:01:57 2011 +0000
Revision:
0:6c80c61bbc6a
Initial revision; tested with example code.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hilgo 0:6c80c61bbc6a 1 /* mbed Samsung LCD Library, for a samsung KS0723 based 128x64 black/white lcd panel.
hilgo 0:6c80c61bbc6a 2 * Copyright (c) 2011, Jeroen Hilgers
hilgo 0:6c80c61bbc6a 3 *
hilgo 0:6c80c61bbc6a 4 * I based the interface on the LCD libraries by Simon Ford, to obtain compatibility
hilgo 0:6c80c61bbc6a 5 * between different displays. I used TextLCD as an example to implement the
hilgo 0:6c80c61bbc6a 6 * : public Steam part of this library.
hilgo 0:6c80c61bbc6a 7 *
hilgo 0:6c80c61bbc6a 8 *
hilgo 0:6c80c61bbc6a 9 * Permission is hereby granted, free of charge, to any person obtaining a copy
hilgo 0:6c80c61bbc6a 10 * of this software and associated documentation files (the "Software"), to deal
hilgo 0:6c80c61bbc6a 11 * in the Software without restriction, including without limitation the rights
hilgo 0:6c80c61bbc6a 12 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
hilgo 0:6c80c61bbc6a 13 * copies of the Software, and to permit persons to whom the Software is
hilgo 0:6c80c61bbc6a 14 * furnished to do so, subject to the following conditions:
hilgo 0:6c80c61bbc6a 15 *
hilgo 0:6c80c61bbc6a 16 * The above copyright notice and this permission notice shall be included in
hilgo 0:6c80c61bbc6a 17 * all copies or substantial portions of the Software.
hilgo 0:6c80c61bbc6a 18 *
hilgo 0:6c80c61bbc6a 19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
hilgo 0:6c80c61bbc6a 20 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
hilgo 0:6c80c61bbc6a 21 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
hilgo 0:6c80c61bbc6a 22 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
hilgo 0:6c80c61bbc6a 23 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
hilgo 0:6c80c61bbc6a 24 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
hilgo 0:6c80c61bbc6a 25 * THE SOFTWARE.
hilgo 0:6c80c61bbc6a 26 */
hilgo 0:6c80c61bbc6a 27
hilgo 0:6c80c61bbc6a 28 #include "LcdKs0723.h"
hilgo 0:6c80c61bbc6a 29
hilgo 0:6c80c61bbc6a 30 LcdKs0723::LcdKs0723(PinName reset, PinName rs, PinName write, PinName read, PinName d0, PinName d1,
hilgo 0:6c80c61bbc6a 31 PinName d2, PinName d3, PinName d4, PinName d5, PinName d6, PinName d7) :
hilgo 0:6c80c61bbc6a 32 mReset(reset), mRs(rs), mWrite(write), mRead(read),
hilgo 0:6c80c61bbc6a 33 mData(d0, d1, d2, d3, d4, d5, d6, d7)
hilgo 0:6c80c61bbc6a 34 {
hilgo 0:6c80c61bbc6a 35 mRow = 0;
hilgo 0:6c80c61bbc6a 36 mCol = 0;
hilgo 0:6c80c61bbc6a 37
hilgo 0:6c80c61bbc6a 38 // Init IO
hilgo 0:6c80c61bbc6a 39 mWrite = 1;
hilgo 0:6c80c61bbc6a 40 mRead = 1;
hilgo 0:6c80c61bbc6a 41 mRs = 0;
hilgo 0:6c80c61bbc6a 42 mData.input();
hilgo 0:6c80c61bbc6a 43
hilgo 0:6c80c61bbc6a 44 // Reset
hilgo 0:6c80c61bbc6a 45 mReset = 0;
hilgo 0:6c80c61bbc6a 46 wait(0.001);
hilgo 0:6c80c61bbc6a 47 mReset = 1;
hilgo 0:6c80c61bbc6a 48 wait(0.1);
hilgo 0:6c80c61bbc6a 49
hilgo 0:6c80c61bbc6a 50 // Select LCD BIAS
hilgo 0:6c80c61bbc6a 51 WriteControl(0xA3);
hilgo 0:6c80c61bbc6a 52
hilgo 0:6c80c61bbc6a 53 // ADCSelect
hilgo 0:6c80c61bbc6a 54 WriteControl(0xA1);
hilgo 0:6c80c61bbc6a 55
hilgo 0:6c80c61bbc6a 56 // PowerControl
hilgo 0:6c80c61bbc6a 57 WriteControl(0x2C);
hilgo 0:6c80c61bbc6a 58 wait(0.002);
hilgo 0:6c80c61bbc6a 59 WriteControl(0x2E);
hilgo 0:6c80c61bbc6a 60 wait(0.002);
hilgo 0:6c80c61bbc6a 61 WriteControl(0x2F);
hilgo 0:6c80c61bbc6a 62 wait(0.002);
hilgo 0:6c80c61bbc6a 63
hilgo 0:6c80c61bbc6a 64 // Regulator resistor
hilgo 0:6c80c61bbc6a 65 WriteControl(0x24);
hilgo 0:6c80c61bbc6a 66
hilgo 0:6c80c61bbc6a 67 // Reference Voltage
hilgo 0:6c80c61bbc6a 68 WriteControl(0x81);
hilgo 0:6c80c61bbc6a 69 WriteControl(0x20);
hilgo 0:6c80c61bbc6a 70 wait(0.1);
hilgo 0:6c80c61bbc6a 71
hilgo 0:6c80c61bbc6a 72 cls();
hilgo 0:6c80c61bbc6a 73
hilgo 0:6c80c61bbc6a 74 // Display on.
hilgo 0:6c80c61bbc6a 75 WriteControl(0xAF);
hilgo 0:6c80c61bbc6a 76 }
hilgo 0:6c80c61bbc6a 77
hilgo 0:6c80c61bbc6a 78 int LcdKs0723::_putc(int value)
hilgo 0:6c80c61bbc6a 79 {
hilgo 0:6c80c61bbc6a 80 if(value == '\n')
hilgo 0:6c80c61bbc6a 81 {
hilgo 0:6c80c61bbc6a 82 mCol = 0;
hilgo 0:6c80c61bbc6a 83 mRow = (mRow+1) & 7;
hilgo 0:6c80c61bbc6a 84 return value;
hilgo 0:6c80c61bbc6a 85 }
hilgo 0:6c80c61bbc6a 86
hilgo 0:6c80c61bbc6a 87 const uint8_t *ptr = mFont5x7 + value*5;
hilgo 0:6c80c61bbc6a 88 uint8_t x;
hilgo 0:6c80c61bbc6a 89
hilgo 0:6c80c61bbc6a 90 WriteControl( 0xB0 | mRow); // Page address.
hilgo 0:6c80c61bbc6a 91 WriteControl( 0x10 | (((mCol+3)>>4)&0x0F) ); // Column address. Display starts at pixel 3.
hilgo 0:6c80c61bbc6a 92 WriteControl( 0x00 | ((mCol+3)&0x0F) ); // Column address 2nd nibble.
hilgo 0:6c80c61bbc6a 93
hilgo 0:6c80c61bbc6a 94 mRs = 1;
hilgo 0:6c80c61bbc6a 95 mData.output();
hilgo 0:6c80c61bbc6a 96
hilgo 0:6c80c61bbc6a 97 for(x=0; x<5; x++)
hilgo 0:6c80c61bbc6a 98 {
hilgo 0:6c80c61bbc6a 99 mData = *ptr++;
hilgo 0:6c80c61bbc6a 100 mWrite = 0;
hilgo 0:6c80c61bbc6a 101 mWrite = 1;
hilgo 0:6c80c61bbc6a 102 }
hilgo 0:6c80c61bbc6a 103 mData = 0;
hilgo 0:6c80c61bbc6a 104 mWrite = 0;
hilgo 0:6c80c61bbc6a 105 mWrite = 1;
hilgo 0:6c80c61bbc6a 106
hilgo 0:6c80c61bbc6a 107 mData.input();
hilgo 0:6c80c61bbc6a 108 mData = 0;
hilgo 0:6c80c61bbc6a 109 mCol += 6;
hilgo 0:6c80c61bbc6a 110
hilgo 0:6c80c61bbc6a 111 if(mCol > 122)
hilgo 0:6c80c61bbc6a 112 {
hilgo 0:6c80c61bbc6a 113 mCol = 0;
hilgo 0:6c80c61bbc6a 114 mRow = (mRow+1)&7;
hilgo 0:6c80c61bbc6a 115 }
hilgo 0:6c80c61bbc6a 116
hilgo 0:6c80c61bbc6a 117 return value;
hilgo 0:6c80c61bbc6a 118 }
hilgo 0:6c80c61bbc6a 119
hilgo 0:6c80c61bbc6a 120 void LcdKs0723::locate(int column, int row)
hilgo 0:6c80c61bbc6a 121 {
hilgo 0:6c80c61bbc6a 122 mRow = row & 7; // Limit to 0-7.
hilgo 0:6c80c61bbc6a 123 if(column < 21)
hilgo 0:6c80c61bbc6a 124 mCol = column*6;
hilgo 0:6c80c61bbc6a 125 else
hilgo 0:6c80c61bbc6a 126 mCol = 0;
hilgo 0:6c80c61bbc6a 127 }
hilgo 0:6c80c61bbc6a 128
hilgo 0:6c80c61bbc6a 129 void LcdKs0723::cls()
hilgo 0:6c80c61bbc6a 130 {
hilgo 0:6c80c61bbc6a 131 uint16_t page;
hilgo 0:6c80c61bbc6a 132 uint8_t x;
hilgo 0:6c80c61bbc6a 133 for(page = 0; page<8; page++)
hilgo 0:6c80c61bbc6a 134 {
hilgo 0:6c80c61bbc6a 135 WriteControl(0xB0 | page); // Page address.
hilgo 0:6c80c61bbc6a 136 WriteControl(0x10); // Column address. Start at column 0.
hilgo 0:6c80c61bbc6a 137 WriteControl(0); // Column address 2nd nibble.
hilgo 0:6c80c61bbc6a 138
hilgo 0:6c80c61bbc6a 139 // Setup to write data 0x00 to display.
hilgo 0:6c80c61bbc6a 140 mRs = 1;
hilgo 0:6c80c61bbc6a 141 mData.output();
hilgo 0:6c80c61bbc6a 142 mData = 0;
hilgo 0:6c80c61bbc6a 143
hilgo 0:6c80c61bbc6a 144 // First three columns are attached to '>' symbols next to the pixel area.
hilgo 0:6c80c61bbc6a 145 // This library has no use for them, but we don't want them uninitialized.
hilgo 0:6c80c61bbc6a 146 for(x=0; x<3; x++)
hilgo 0:6c80c61bbc6a 147 {
hilgo 0:6c80c61bbc6a 148 mWrite = 0;
hilgo 0:6c80c61bbc6a 149 mWrite = 1;
hilgo 0:6c80c61bbc6a 150 }
hilgo 0:6c80c61bbc6a 151
hilgo 0:6c80c61bbc6a 152 // Columns 3-131 display pixel data. Clear them.
hilgo 0:6c80c61bbc6a 153 for(x=0; x<128; x++)
hilgo 0:6c80c61bbc6a 154 {
hilgo 0:6c80c61bbc6a 155 mWrite = 0;
hilgo 0:6c80c61bbc6a 156 mWrite = 1;
hilgo 0:6c80c61bbc6a 157 }
hilgo 0:6c80c61bbc6a 158
hilgo 0:6c80c61bbc6a 159 // Last five three columns are attached to '<' symbols next to the pixel area.
hilgo 0:6c80c61bbc6a 160 // This library has no use for them, but we don't want them uninitialized.
hilgo 0:6c80c61bbc6a 161 for(x=0; x<5; x++)
hilgo 0:6c80c61bbc6a 162 {
hilgo 0:6c80c61bbc6a 163 mWrite = 0;
hilgo 0:6c80c61bbc6a 164 mWrite = 1;
hilgo 0:6c80c61bbc6a 165 }
hilgo 0:6c80c61bbc6a 166 mData.input();
hilgo 0:6c80c61bbc6a 167 mData = 0;
hilgo 0:6c80c61bbc6a 168 }
hilgo 0:6c80c61bbc6a 169
hilgo 0:6c80c61bbc6a 170 mRow =0;
hilgo 0:6c80c61bbc6a 171 mCol = 0;
hilgo 0:6c80c61bbc6a 172 }
hilgo 0:6c80c61bbc6a 173
hilgo 0:6c80c61bbc6a 174 uint8_t LcdKs0723::ReadData (void)
hilgo 0:6c80c61bbc6a 175 {
hilgo 0:6c80c61bbc6a 176 uint8_t result;
hilgo 0:6c80c61bbc6a 177 mData.input();
hilgo 0:6c80c61bbc6a 178 mRs = 1;
hilgo 0:6c80c61bbc6a 179 mRead = 0;
hilgo 0:6c80c61bbc6a 180 result = mData;
hilgo 0:6c80c61bbc6a 181 mRead = 1;
hilgo 0:6c80c61bbc6a 182 return result;
hilgo 0:6c80c61bbc6a 183 }
hilgo 0:6c80c61bbc6a 184
hilgo 0:6c80c61bbc6a 185 void LcdKs0723::WriteData (uint8_t value)
hilgo 0:6c80c61bbc6a 186 {
hilgo 0:6c80c61bbc6a 187 mRs = 1;
hilgo 0:6c80c61bbc6a 188 mData.output();
hilgo 0:6c80c61bbc6a 189 mData = value;
hilgo 0:6c80c61bbc6a 190 mWrite = 0;
hilgo 0:6c80c61bbc6a 191 mWrite = 1;
hilgo 0:6c80c61bbc6a 192 mData.input();
hilgo 0:6c80c61bbc6a 193 mData = 0;
hilgo 0:6c80c61bbc6a 194 }
hilgo 0:6c80c61bbc6a 195
hilgo 0:6c80c61bbc6a 196 uint8_t LcdKs0723::ReadStatus(void)
hilgo 0:6c80c61bbc6a 197 {
hilgo 0:6c80c61bbc6a 198 uint8_t result;
hilgo 0:6c80c61bbc6a 199 mData.input();
hilgo 0:6c80c61bbc6a 200 mRs = 0;
hilgo 0:6c80c61bbc6a 201 mRead = 0;
hilgo 0:6c80c61bbc6a 202 result = mData;
hilgo 0:6c80c61bbc6a 203 mRead = 1;
hilgo 0:6c80c61bbc6a 204 return result;
hilgo 0:6c80c61bbc6a 205 }
hilgo 0:6c80c61bbc6a 206
hilgo 0:6c80c61bbc6a 207 void LcdKs0723::WriteControl(uint8_t value)
hilgo 0:6c80c61bbc6a 208 {
hilgo 0:6c80c61bbc6a 209 mRs = 0;
hilgo 0:6c80c61bbc6a 210 mData.output();
hilgo 0:6c80c61bbc6a 211 mData = value;
hilgo 0:6c80c61bbc6a 212 mWrite = 0;
hilgo 0:6c80c61bbc6a 213 mWrite = 1;
hilgo 0:6c80c61bbc6a 214 mData.input();
hilgo 0:6c80c61bbc6a 215 mData = 0;
hilgo 0:6c80c61bbc6a 216 }
hilgo 0:6c80c61bbc6a 217
hilgo 0:6c80c61bbc6a 218 const uint8_t LcdKs0723::mFont5x7[] =
hilgo 0:6c80c61bbc6a 219 {
hilgo 0:6c80c61bbc6a 220 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 221 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 222 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 223 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 224 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 225 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 226 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 227 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 228 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 229 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 230 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 231 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 232 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 233 0x00, 0x07, 0x05, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 1A = deg symbol.
hilgo 0:6c80c61bbc6a 234 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 235 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 236 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 237 0x00, 0x07, 0x00, 0x07, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14,
hilgo 0:6c80c61bbc6a 238 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x23, 0x13, 0x08, 0x64, 0x62,
hilgo 0:6c80c61bbc6a 239 0x36, 0x49, 0x55, 0x22, 0x50, 0x00, 0x05, 0x03, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 240 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00,
hilgo 0:6c80c61bbc6a 241 0x14, 0x08, 0x3E, 0x08, 0x14, 0x08, 0x08, 0x3E, 0x08, 0x08,
hilgo 0:6c80c61bbc6a 242 0x00, 0x50, 0x30, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08,
hilgo 0:6c80c61bbc6a 243 0x00, 0x60, 0x60, 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02,
hilgo 0:6c80c61bbc6a 244 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x42, 0x7F, 0x40, 0x00,
hilgo 0:6c80c61bbc6a 245 0x42, 0x61, 0x51, 0x49, 0x46, 0x21, 0x41, 0x45, 0x4B, 0x31,
hilgo 0:6c80c61bbc6a 246 0x18, 0x14, 0x12, 0x7F, 0x10, 0x27, 0x45, 0x45, 0x45, 0x39,
hilgo 0:6c80c61bbc6a 247 0x3C, 0x4A, 0x49, 0x49, 0x30, 0x01, 0x71, 0x09, 0x05, 0x03,
hilgo 0:6c80c61bbc6a 248 0x36, 0x49, 0x49, 0x49, 0x36, 0x06, 0x49, 0x49, 0x29, 0x1E,
hilgo 0:6c80c61bbc6a 249 0x00, 0x36, 0x36, 0x00, 0x00, 0x00, 0x56, 0x36, 0x00, 0x00,
hilgo 0:6c80c61bbc6a 250 0x08, 0x14, 0x22, 0x41, 0x00, 0x14, 0x14, 0x14, 0x14, 0x14,
hilgo 0:6c80c61bbc6a 251 0x00, 0x41, 0x22, 0x14, 0x08, 0x02, 0x01, 0x51, 0x09, 0x06,
hilgo 0:6c80c61bbc6a 252 0x32, 0x49, 0x79, 0x41, 0x3E, 0x7E, 0x11, 0x11, 0x11, 0x7E,
hilgo 0:6c80c61bbc6a 253 0x7F, 0x49, 0x49, 0x49, 0x36, 0x3E, 0x41, 0x41, 0x41, 0x22,
hilgo 0:6c80c61bbc6a 254 0x7F, 0x41, 0x41, 0x22, 0x1C, 0x7F, 0x49, 0x49, 0x49, 0x41,
hilgo 0:6c80c61bbc6a 255 0x7F, 0x09, 0x09, 0x09, 0x01, 0x3E, 0x41, 0x49, 0x49, 0x7A,
hilgo 0:6c80c61bbc6a 256 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x41, 0x7F, 0x41, 0x00,
hilgo 0:6c80c61bbc6a 257 0x20, 0x40, 0x41, 0x3F, 0x01, 0x7F, 0x08, 0x14, 0x22, 0x41,
hilgo 0:6c80c61bbc6a 258 0x7F, 0x40, 0x40, 0x40, 0x40, 0x7F, 0x02, 0x0C, 0x02, 0x7F,
hilgo 0:6c80c61bbc6a 259 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x3E, 0x41, 0x41, 0x41, 0x3E,
hilgo 0:6c80c61bbc6a 260 0x7F, 0x09, 0x09, 0x09, 0x06, 0x3E, 0x41, 0x51, 0x21, 0x5E,
hilgo 0:6c80c61bbc6a 261 0x7F, 0x09, 0x19, 0x29, 0x46, 0x46, 0x49, 0x49, 0x49, 0x31,
hilgo 0:6c80c61bbc6a 262 0x01, 0x01, 0x7F, 0x01, 0x01, 0x3F, 0x40, 0x40, 0x40, 0x3F,
hilgo 0:6c80c61bbc6a 263 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x3F, 0x40, 0x38, 0x40, 0x3F,
hilgo 0:6c80c61bbc6a 264 0x63, 0x14, 0x08, 0x14, 0x63, 0x07, 0x08, 0x70, 0x08, 0x07,
hilgo 0:6c80c61bbc6a 265 0x61, 0x51, 0x49, 0x45, 0x43, 0x00, 0x7F, 0x41, 0x41, 0x00,
hilgo 0:6c80c61bbc6a 266 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x41, 0x41, 0x7F, 0x00,
hilgo 0:6c80c61bbc6a 267 0x04, 0x02, 0x01, 0x02, 0x04, 0x40, 0x40, 0x40, 0x40, 0x40,
hilgo 0:6c80c61bbc6a 268 0x00, 0x01, 0x02, 0x04, 0x00, 0x20, 0x54, 0x54, 0x54, 0x78,
hilgo 0:6c80c61bbc6a 269 0x7F, 0x48, 0x44, 0x44, 0x38, 0x38, 0x44, 0x44, 0x44, 0x20,
hilgo 0:6c80c61bbc6a 270 0x38, 0x44, 0x44, 0x48, 0x7F, 0x38, 0x54, 0x54, 0x54, 0x18,
hilgo 0:6c80c61bbc6a 271 0x08, 0x7E, 0x09, 0x01, 0x02, 0x0C, 0x52, 0x52, 0x52, 0x3E,
hilgo 0:6c80c61bbc6a 272 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x44, 0x7D, 0x40, 0x00,
hilgo 0:6c80c61bbc6a 273 0x20, 0x40, 0x44, 0x3D, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00,
hilgo 0:6c80c61bbc6a 274 0x00, 0x41, 0x7F, 0x40, 0x00, 0x7C, 0x04, 0x18, 0x04, 0x78,
hilgo 0:6c80c61bbc6a 275 0x7C, 0x08, 0x04, 0x04, 0x78, 0x38, 0x44, 0x44, 0x44, 0x38,
hilgo 0:6c80c61bbc6a 276 0x7C, 0x14, 0x14, 0x14, 0x08, 0x08, 0x14, 0x14, 0x18, 0x7C,
hilgo 0:6c80c61bbc6a 277 0x7C, 0x08, 0x04, 0x04, 0x08, 0x48, 0x54, 0x54, 0x54, 0x20,
hilgo 0:6c80c61bbc6a 278 0x04, 0x3F, 0x44, 0x40, 0x20, 0x3C, 0x40, 0x40, 0x20, 0x7C,
hilgo 0:6c80c61bbc6a 279 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x3C, 0x40, 0x30, 0x40, 0x3C,
hilgo 0:6c80c61bbc6a 280 0x44, 0x28, 0x10, 0x28, 0x44, 0x0C, 0x50, 0x50, 0x50, 0x3C,
hilgo 0:6c80c61bbc6a 281 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, 0x08, 0x36, 0x41, 0x00,
hilgo 0:6c80c61bbc6a 282 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x41, 0x36, 0x08, 0x00,
hilgo 0:6c80c61bbc6a 283 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
hilgo 0:6c80c61bbc6a 284 };
hilgo 0:6c80c61bbc6a 285
hilgo 0:6c80c61bbc6a 286
hilgo 0:6c80c61bbc6a 287