NucleoF446 re + SSD1331 simple Library

Dependents:   Nucleo_446 Nucleo446_SSD1331

Committer:
kadonotakashi
Date:
Thu Oct 11 04:10:23 2018 +0000
Revision:
1:85198abc3103
Parent:
0:9442efe129e7
add font;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kadonotakashi 0:9442efe129e7 1
kadonotakashi 0:9442efe129e7 2 #include "ssd1331.h"
kadonotakashi 0:9442efe129e7 3 #include "mbed.h"
kadonotakashi 0:9442efe129e7 4
kadonotakashi 0:9442efe129e7 5
kadonotakashi 0:9442efe129e7 6
kadonotakashi 0:9442efe129e7 7 /*
kadonotakashi 0:9442efe129e7 8 private function
kadonotakashi 0:9442efe129e7 9 */
kadonotakashi 0:9442efe129e7 10
kadonotakashi 0:9442efe129e7 11 void ssd1331::DataWr(uint8_t data) {
kadonotakashi 0:9442efe129e7 12 _dc=1;
kadonotakashi 0:9442efe129e7 13 _cs=0;
kadonotakashi 0:9442efe129e7 14 _spi.write(data);
kadonotakashi 0:9442efe129e7 15 _cs=1;
kadonotakashi 0:9442efe129e7 16 }
kadonotakashi 0:9442efe129e7 17
kadonotakashi 0:9442efe129e7 18 void ssd1331::CmdWr(uint8_t Cmd) {
kadonotakashi 0:9442efe129e7 19 _dc=0;
kadonotakashi 0:9442efe129e7 20 _cs=0;
kadonotakashi 0:9442efe129e7 21 _spi.write(Cmd);
kadonotakashi 0:9442efe129e7 22 _cs=1;
kadonotakashi 0:9442efe129e7 23 }
kadonotakashi 0:9442efe129e7 24
kadonotakashi 0:9442efe129e7 25 ssd1331::ssd1331(PinName mosi,PinName miso,PinName sclk,PinName cs,PinName dc,PinName reset)
kadonotakashi 0:9442efe129e7 26 : _spi(mosi,miso,sclk),_cs(cs),_dc(dc),_rst(reset)
kadonotakashi 0:9442efe129e7 27 {
kadonotakashi 0:9442efe129e7 28 _spi.format(8,3);
kadonotakashi 0:9442efe129e7 29 _spi.frequency(500000);
kadonotakashi 0:9442efe129e7 30 _cs =1;
kadonotakashi 0:9442efe129e7 31 _dc =1;
kadonotakashi 0:9442efe129e7 32 _rst =0;
kadonotakashi 0:9442efe129e7 33
kadonotakashi 1:85198abc3103 34 SetFontInf();
kadonotakashi 0:9442efe129e7 35 }
kadonotakashi 0:9442efe129e7 36
kadonotakashi 0:9442efe129e7 37
kadonotakashi 0:9442efe129e7 38
kadonotakashi 0:9442efe129e7 39 void ssd1331::Initssd1331()
kadonotakashi 0:9442efe129e7 40 {
kadonotakashi 0:9442efe129e7 41 _cs =1;
kadonotakashi 0:9442efe129e7 42 _dc =1;
kadonotakashi 0:9442efe129e7 43 _rst =0;
kadonotakashi 0:9442efe129e7 44
kadonotakashi 0:9442efe129e7 45 wait_ms(100);
kadonotakashi 0:9442efe129e7 46 _rst =1;
kadonotakashi 0:9442efe129e7 47 wait_ms(1);
kadonotakashi 0:9442efe129e7 48
kadonotakashi 0:9442efe129e7 49 CmdWr(SSD1331_CMD_SetDspOff);
kadonotakashi 0:9442efe129e7 50 CmdWr(SSD1331_CMD_SetRemap_DataFormat); CmdWr(0x72); //A[7:6] = 00; 256 color. A[7:6] = 01; 65k color format
kadonotakashi 0:9442efe129e7 51 CmdWr(SSD1331_CMD_SetDspStrtLine); CmdWr(0x0); //
kadonotakashi 0:9442efe129e7 52 CmdWr(SSD1331_CMD_SetDspOffset); CmdWr(0x0); //
kadonotakashi 0:9442efe129e7 53 CmdWr(SSD1331_CMD_SetDspModeNorm);
kadonotakashi 0:9442efe129e7 54 CmdWr(SSD1331_CMD_SetMltplRatio); CmdWr(63); //
kadonotakashi 0:9442efe129e7 55 CmdWr(SSD1331_CMD_SetMstrCnfg); CmdWr(0x8e); //
kadonotakashi 0:9442efe129e7 56 CmdWr(SSD1331_CMD_PowerSave); CmdWr(0x1A); //
kadonotakashi 0:9442efe129e7 57 CmdWr(SSD1331_CMD_P1_P2_ADJ); CmdWr(0x74); //
kadonotakashi 0:9442efe129e7 58 CmdWr(SSD1331_CMD_SetDispCLK); CmdWr(0xf0); //
kadonotakashi 0:9442efe129e7 59 CmdWr(SSD1331_CMD_SetChrgA); CmdWr(0x81); //
kadonotakashi 0:9442efe129e7 60 CmdWr(SSD1331_CMD_SetChrgB); CmdWr(0x82); //
kadonotakashi 0:9442efe129e7 61 CmdWr(SSD1331_CMD_SetChrgC); CmdWr(0x83); //
kadonotakashi 0:9442efe129e7 62 CmdWr(SSD1331_CMD_SetPrChrgV); CmdWr(0x3A); //
kadonotakashi 0:9442efe129e7 63 CmdWr(SSD1331_CMD_SetVcomhV); CmdWr(0x3E); //
kadonotakashi 0:9442efe129e7 64 CmdWr(SSD1331_CMD_SetMstrCrrnt); CmdWr(0x06); //
kadonotakashi 0:9442efe129e7 65 CmdWr(SSD1331_CMD_SetClmAddr); CmdWr(0); CmdWr(95); //
kadonotakashi 0:9442efe129e7 66 CmdWr(SSD1331_CMD_SetRawAddr); CmdWr(0); CmdWr(63); //
kadonotakashi 0:9442efe129e7 67 CmdWr(SSD1331_CMD_SetCntrstA); CmdWr(0xff); //
kadonotakashi 0:9442efe129e7 68 CmdWr(SSD1331_CMD_SetCntrstB); CmdWr(0xff); //
kadonotakashi 0:9442efe129e7 69 CmdWr(SSD1331_CMD_SetCntrstC); CmdWr(0xfF); //
kadonotakashi 0:9442efe129e7 70
kadonotakashi 0:9442efe129e7 71 CmdWr(SSD1331_CMD_SetDspOn); //
kadonotakashi 0:9442efe129e7 72 wait_ms(100);
kadonotakashi 0:9442efe129e7 73 }
kadonotakashi 0:9442efe129e7 74
kadonotakashi 0:9442efe129e7 75 void ssd1331::ClearScreen()
kadonotakashi 0:9442efe129e7 76 {
kadonotakashi 0:9442efe129e7 77
kadonotakashi 0:9442efe129e7 78 wait_ms(1); //クリアーコマンドは400μs 以上の休止期間が必要かも
kadonotakashi 0:9442efe129e7 79
kadonotakashi 0:9442efe129e7 80 CmdWr(SSD1331_CMD_ClearWindow);
kadonotakashi 0:9442efe129e7 81 CmdWr(0); //X始点
kadonotakashi 0:9442efe129e7 82 CmdWr(0); //Y始点
kadonotakashi 0:9442efe129e7 83 CmdWr(WIDTH_1331-1); //X終点
kadonotakashi 0:9442efe129e7 84 CmdWr(HEIGHT_1331-1); //Y終点
kadonotakashi 0:9442efe129e7 85
kadonotakashi 0:9442efe129e7 86 wait_ms(1); //クリアーコマンドは400μs 以上の休止期間が必要かも
kadonotakashi 0:9442efe129e7 87 }
kadonotakashi 0:9442efe129e7 88
kadonotakashi 0:9442efe129e7 89
kadonotakashi 0:9442efe129e7 90 void ssd1331::DrawPix( uint16_t x,
kadonotakashi 0:9442efe129e7 91 uint16_t y,
kadonotakashi 0:9442efe129e7 92 uint16_t color )
kadonotakashi 0:9442efe129e7 93 {
kadonotakashi 0:9442efe129e7 94 if(x>=WIDTH_1331-1){ return ; }
kadonotakashi 0:9442efe129e7 95 if(y>=HEIGHT_1331-1){ return ; }
kadonotakashi 0:9442efe129e7 96
kadonotakashi 0:9442efe129e7 97 CmdWr(SSD1331_CMD_SetClmAddr); CmdWr(x); CmdWr(x);
kadonotakashi 0:9442efe129e7 98 CmdWr(SSD1331_CMD_SetRawAddr); CmdWr(y); CmdWr(y);
kadonotakashi 0:9442efe129e7 99 DataWr( 0xff & (color>>8) ); DataWr( 0xff & (color) );
kadonotakashi 0:9442efe129e7 100 return;
kadonotakashi 0:9442efe129e7 101
kadonotakashi 0:9442efe129e7 102 }
kadonotakashi 0:9442efe129e7 103
kadonotakashi 0:9442efe129e7 104 void ssd1331::DrawLine( uint8_t xs,
kadonotakashi 0:9442efe129e7 105 uint8_t ys,
kadonotakashi 0:9442efe129e7 106 uint8_t xe,
kadonotakashi 0:9442efe129e7 107 uint8_t ye,
kadonotakashi 0:9442efe129e7 108 uint16_t color )
kadonotakashi 0:9442efe129e7 109 {
kadonotakashi 0:9442efe129e7 110 if(xe>=WIDTH_1331-1){ return ; }
kadonotakashi 0:9442efe129e7 111 if(ye>=HEIGHT_1331-1){ return ; }
kadonotakashi 0:9442efe129e7 112 if(xe>=WIDTH_1331-1){ return ; }
kadonotakashi 0:9442efe129e7 113 if(ye>=HEIGHT_1331-1){ return ; }
kadonotakashi 0:9442efe129e7 114
kadonotakashi 0:9442efe129e7 115 CmdWr(SSD1331_CMD_DrawLine);
kadonotakashi 0:9442efe129e7 116 CmdWr(xs); CmdWr(ys); CmdWr(xe); CmdWr(ye);
kadonotakashi 0:9442efe129e7 117
kadonotakashi 0:9442efe129e7 118 //color R 5bit bit 15-11
kadonotakashi 0:9442efe129e7 119 // G 6bit bit 10- 5
kadonotakashi 0:9442efe129e7 120 // B 5bit bit 4- 0
kadonotakashi 0:9442efe129e7 121 CmdWr((color>>10) & 0x3e); //R 5bit
kadonotakashi 0:9442efe129e7 122 CmdWr((color>>5) & 0x3f); //G 6bit
kadonotakashi 0:9442efe129e7 123 CmdWr((color<<1) & 0x3e); //B 5bit
kadonotakashi 0:9442efe129e7 124 }
kadonotakashi 0:9442efe129e7 125
kadonotakashi 0:9442efe129e7 126 void ssd1331::DrawRectangle( uint8_t xs,
kadonotakashi 0:9442efe129e7 127 uint8_t ys,
kadonotakashi 0:9442efe129e7 128 uint8_t xe,
kadonotakashi 0:9442efe129e7 129 uint8_t ye,
kadonotakashi 0:9442efe129e7 130 uint16_t color )
kadonotakashi 0:9442efe129e7 131 {
kadonotakashi 0:9442efe129e7 132 CmdWr(SSD1331_CMD_FillEnable); CmdWr(0x00); //塗りつぶし禁止
kadonotakashi 0:9442efe129e7 133
kadonotakashi 0:9442efe129e7 134 CmdWr(SSD1331_CMD_DrawRectangle);
kadonotakashi 0:9442efe129e7 135 CmdWr(xs); CmdWr(ys); CmdWr(xe); CmdWr(ye);
kadonotakashi 0:9442efe129e7 136
kadonotakashi 0:9442efe129e7 137 //color R 5bit bit 15-11
kadonotakashi 0:9442efe129e7 138 // G 6bit bit 10- 5
kadonotakashi 0:9442efe129e7 139 // B 5bit bit 4- 0
kadonotakashi 0:9442efe129e7 140 CmdWr((color>>10) & 0x3e); //R 5bit
kadonotakashi 0:9442efe129e7 141 CmdWr((color>>5) & 0x3f); //G 6bit
kadonotakashi 0:9442efe129e7 142 CmdWr((color<<1) & 0x3e); //B 5bit
kadonotakashi 0:9442efe129e7 143 CmdWr(0); //R 5bit
kadonotakashi 0:9442efe129e7 144 CmdWr(0); //G 6bit
kadonotakashi 0:9442efe129e7 145 CmdWr(0); //B 5bit
kadonotakashi 0:9442efe129e7 146 wait_us(100);
kadonotakashi 0:9442efe129e7 147
kadonotakashi 0:9442efe129e7 148 }
kadonotakashi 0:9442efe129e7 149
kadonotakashi 0:9442efe129e7 150 void ssd1331::DrawRectangleFill( uint8_t xs,
kadonotakashi 0:9442efe129e7 151 uint8_t ys,
kadonotakashi 0:9442efe129e7 152 uint8_t xe,
kadonotakashi 0:9442efe129e7 153 uint8_t ye,
kadonotakashi 0:9442efe129e7 154 uint16_t line_color,
kadonotakashi 0:9442efe129e7 155 uint16_t fill_color )
kadonotakashi 0:9442efe129e7 156
kadonotakashi 0:9442efe129e7 157 {
kadonotakashi 0:9442efe129e7 158 CmdWr(SSD1331_CMD_FillEnable); CmdWr(0x01); //塗りつぶし禁止
kadonotakashi 0:9442efe129e7 159
kadonotakashi 0:9442efe129e7 160 CmdWr(SSD1331_CMD_DrawRectangle);
kadonotakashi 0:9442efe129e7 161 CmdWr(xs); CmdWr(ys); CmdWr(xe); CmdWr(ye);
kadonotakashi 0:9442efe129e7 162
kadonotakashi 0:9442efe129e7 163 //color R 5bit bit 15-11
kadonotakashi 0:9442efe129e7 164 // G 6bit bit 10- 5
kadonotakashi 0:9442efe129e7 165 // B 5bit bit 4- 0
kadonotakashi 0:9442efe129e7 166 CmdWr((line_color>>10) & 0x3e); //R 5bit
kadonotakashi 0:9442efe129e7 167 CmdWr((line_color>>5) & 0x3f); //G 6bit
kadonotakashi 0:9442efe129e7 168 CmdWr((line_color<<1) & 0x3e); //B 5bit
kadonotakashi 0:9442efe129e7 169 CmdWr((fill_color>>10) & 0x3e); //R 5bit
kadonotakashi 0:9442efe129e7 170 CmdWr((fill_color>>5) & 0x3f); //G 6bit
kadonotakashi 0:9442efe129e7 171 CmdWr((fill_color<<1) & 0x3e); //B 5bit
kadonotakashi 0:9442efe129e7 172 wait_us(400);
kadonotakashi 0:9442efe129e7 173 }
kadonotakashi 0:9442efe129e7 174
kadonotakashi 0:9442efe129e7 175
kadonotakashi 0:9442efe129e7 176
kadonotakashi 0:9442efe129e7 177 /*
kadonotakashi 0:9442efe129e7 178 * Adafruit Font Library
kadonotakashi 0:9442efe129e7 179 * */
kadonotakashi 0:9442efe129e7 180 int ssd1331::put_charPattern(char CharCode,uint16_t CHAR_COLOR,uint16_t xs,uint16_t ys,int FontSel)
kadonotakashi 0:9442efe129e7 181 {
kadonotakashi 0:9442efe129e7 182 uint8_t FirstCode,char_offset;
kadonotakashi 0:9442efe129e7 183 uint8_t *pFNT;
kadonotakashi 0:9442efe129e7 184
kadonotakashi 0:9442efe129e7 185 int x,y;
kadonotakashi 0:9442efe129e7 186 int FontWidth,FontHeight,FontDotCap,bitCnt;
kadonotakashi 0:9442efe129e7 187 int xOffset,yOffset;
kadonotakashi 0:9442efe129e7 188 uint8_t LinePattern;
kadonotakashi 0:9442efe129e7 189 int BitCount;
kadonotakashi 0:9442efe129e7 190
kadonotakashi 0:9442efe129e7 191 FirstCode = FntList[FontSel].pFnt->first;
kadonotakashi 0:9442efe129e7 192 if ((CharCode > FntList[FontSel].pFnt->last)||(CharCode < FirstCode)){
kadonotakashi 0:9442efe129e7 193 return -1;
kadonotakashi 0:9442efe129e7 194 }
kadonotakashi 0:9442efe129e7 195
kadonotakashi 0:9442efe129e7 196 char_offset=(CharCode - FirstCode);
kadonotakashi 0:9442efe129e7 197 pFNT = FntList[FontSel].pFnt->bitmap;
kadonotakashi 0:9442efe129e7 198 pFNT += FntList[FontSel].pFnt->glyph[char_offset].bitmapOffset;
kadonotakashi 0:9442efe129e7 199
kadonotakashi 0:9442efe129e7 200 FontWidth = FntList[FontSel].pFnt->glyph[char_offset].width;
kadonotakashi 0:9442efe129e7 201 FontHeight = FntList[FontSel].pFnt->glyph[char_offset].height;
kadonotakashi 0:9442efe129e7 202 FontDotCap = FontWidth * FontHeight;
kadonotakashi 0:9442efe129e7 203
kadonotakashi 0:9442efe129e7 204 xOffset = FntList[FontSel].pFnt->glyph[char_offset].xOffset;
kadonotakashi 0:9442efe129e7 205 yOffset = FntList[FontSel].pFnt->glyph[char_offset].yOffset;
kadonotakashi 0:9442efe129e7 206
kadonotakashi 0:9442efe129e7 207 x=0;
kadonotakashi 0:9442efe129e7 208 y=0;
kadonotakashi 0:9442efe129e7 209 BitCount=8;
kadonotakashi 0:9442efe129e7 210
kadonotakashi 0:9442efe129e7 211 for(bitCnt=0;bitCnt<FontDotCap;bitCnt++){
kadonotakashi 0:9442efe129e7 212 if (8==BitCount){
kadonotakashi 0:9442efe129e7 213 LinePattern = *pFNT++;
kadonotakashi 0:9442efe129e7 214 BitCount=0;
kadonotakashi 0:9442efe129e7 215 }
kadonotakashi 0:9442efe129e7 216 if((LinePattern & 0x80)!=0){
kadonotakashi 0:9442efe129e7 217 DrawPix(x+xs+xOffset,y+ys+yOffset,CHAR_COLOR);
kadonotakashi 0:9442efe129e7 218 // Serial.print("@");
kadonotakashi 0:9442efe129e7 219
kadonotakashi 0:9442efe129e7 220 // Serial.print(" x ");
kadonotakashi 0:9442efe129e7 221 // Serial.print(x+xs+xOffset);
kadonotakashi 0:9442efe129e7 222 // Serial.print(" y ");
kadonotakashi 0:9442efe129e7 223 // Serial.print(y+ys+yOffset);
kadonotakashi 0:9442efe129e7 224
kadonotakashi 0:9442efe129e7 225 }else{
kadonotakashi 0:9442efe129e7 226 // Serial.print(".");
kadonotakashi 0:9442efe129e7 227 }
kadonotakashi 0:9442efe129e7 228
kadonotakashi 0:9442efe129e7 229 LinePattern = LinePattern<<1;
kadonotakashi 0:9442efe129e7 230
kadonotakashi 0:9442efe129e7 231 if(x>=FontWidth-1){
kadonotakashi 0:9442efe129e7 232 x=0; y++;
kadonotakashi 0:9442efe129e7 233 // Serial.println();
kadonotakashi 0:9442efe129e7 234 }else{
kadonotakashi 0:9442efe129e7 235 x++;
kadonotakashi 0:9442efe129e7 236 }
kadonotakashi 0:9442efe129e7 237 BitCount++;
kadonotakashi 0:9442efe129e7 238 }
kadonotakashi 0:9442efe129e7 239 return FntList[FontSel].pFnt->glyph[char_offset].xAdvance;
kadonotakashi 0:9442efe129e7 240 }
kadonotakashi 0:9442efe129e7 241
kadonotakashi 0:9442efe129e7 242 int ssd1331::PutString(int x,int y,char *string,uint16_t CharColor,int FontSel)
kadonotakashi 0:9442efe129e7 243 {
kadonotakashi 0:9442efe129e7 244 int i,j,k;
kadonotakashi 0:9442efe129e7 245 char *STR;
kadonotakashi 0:9442efe129e7 246
kadonotakashi 0:9442efe129e7 247 STR = (char *)string;
kadonotakashi 0:9442efe129e7 248
kadonotakashi 0:9442efe129e7 249 for(i=0,j=x;;i++,STR++){
kadonotakashi 0:9442efe129e7 250
kadonotakashi 0:9442efe129e7 251 if (*STR==0){
kadonotakashi 0:9442efe129e7 252 return 0;
kadonotakashi 0:9442efe129e7 253 }
kadonotakashi 0:9442efe129e7 254
kadonotakashi 0:9442efe129e7 255 k=put_charPattern(*STR,CharColor,j,y,FontSel);
kadonotakashi 0:9442efe129e7 256 if(k<0){
kadonotakashi 0:9442efe129e7 257 return -2;
kadonotakashi 0:9442efe129e7 258 }else{
kadonotakashi 0:9442efe129e7 259 j=j+k;
kadonotakashi 0:9442efe129e7 260 }
kadonotakashi 0:9442efe129e7 261 }
kadonotakashi 1:85198abc3103 262 // return 0;
kadonotakashi 1:85198abc3103 263 }
kadonotakashi 1:85198abc3103 264
kadonotakashi 1:85198abc3103 265 void ssd1331::GetFontInfo(int FontNo, FontList *FntLst){
kadonotakashi 1:85198abc3103 266 FntLst->pFnt =FntList[FontNo].pFnt;
kadonotakashi 1:85198abc3103 267
kadonotakashi 1:85198abc3103 268 for(int i=0;i<16;i++){
kadonotakashi 1:85198abc3103 269 FntLst->FontName[i] = FntList[FontNo].FontName[i];
kadonotakashi 1:85198abc3103 270 }
kadonotakashi 1:85198abc3103 271
kadonotakashi 1:85198abc3103 272 // strcpy(FntList->FontName,FntList[0].FontName);
kadonotakashi 1:85198abc3103 273
kadonotakashi 1:85198abc3103 274 }
kadonotakashi 1:85198abc3103 275 int ssd1331::GetFontNum(void){
kadonotakashi 1:85198abc3103 276 return FontNum;
kadonotakashi 0:9442efe129e7 277 }
kadonotakashi 1:85198abc3103 278
kadonotakashi 1:85198abc3103 279 int ssd1331::SetFontInf()
kadonotakashi 1:85198abc3103 280 {
kadonotakashi 1:85198abc3103 281 FntList[7].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 282 FntList[6].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 283 FntList[5].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 284 FntList[4].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 285 FntList[3].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 286 FntList[2].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 287 FntList[1].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 288 FntList[0].pFnt=(GFXfont *)0;
kadonotakashi 1:85198abc3103 289
kadonotakashi 1:85198abc3103 290 FntList[3].pFnt=(GFXfont *)&TomThumb;
kadonotakashi 1:85198abc3103 291 strcpy(FntList[3].FontName,"TomThumb\0");
kadonotakashi 1:85198abc3103 292
kadonotakashi 1:85198abc3103 293 FntList[2].pFnt=(GFXfont *)&FreeSerif9pt7b;
kadonotakashi 1:85198abc3103 294 strcpy(FntList[2].FontName,"Serif9pt7b\0");
kadonotakashi 1:85198abc3103 295
kadonotakashi 1:85198abc3103 296 FntList[1].pFnt=(GFXfont *)&FreeSans9pt7b;
kadonotakashi 1:85198abc3103 297 strcpy(FntList[1].FontName,"Sans9pt7b\0");
kadonotakashi 1:85198abc3103 298
kadonotakashi 1:85198abc3103 299 FntList[0].pFnt=(GFXfont *)&FreeMonoBold9pt7b;
kadonotakashi 1:85198abc3103 300 strcpy(FntList[0].FontName,"MonoBold9pt7b\0");
kadonotakashi 1:85198abc3103 301
kadonotakashi 1:85198abc3103 302 return 5;
kadonotakashi 1:85198abc3103 303 }