1 #include <ctype.h> 2 #include "textgfx.h" 3 #include "../lang.h" 4 putch_ascii(int ch)5void putch_ascii(int ch) 6 { 7 switch (ch) { 8 case HLINE: 9 ch = '-'; 10 break; 11 case VLINE: 12 ch = '|'; 13 break; 14 case TEXTURE1: 15 ch = '#'; 16 break; 17 case TEXTURE2: 18 case ' '|0x100: 19 ch = ' '; 20 break; 21 case BULLET: 22 ch = '.'; 23 break; 24 case UPARROW: 25 ch = '^'; 26 break; 27 default: 28 ch = '+'; 29 } 30 putch(ch); 31 } 32 putnchars(int ch,int n)33int putnchars(int ch, int n) 34 { 35 int i = 0; 36 for (; i < n; i++) 37 putch(ch); 38 return n; 39 } 40 printstr_acs(const char * str,int n)41void printstr_acs(const char *str, int n) 42 { 43 int ch = 0; 44 while (*str) { 45 if (islower(*str) || (ch & 0x100) && *str == ' ') 46 ch = *str | 0x100; 47 else 48 ch = *str; 49 putch(ch); 50 str++; 51 if (*str == 'N') { 52 putnchars(ch, n-1); 53 str++; 54 } 55 } 56 } 57 isprintable(int c)58int isprintable(int c) 59 { 60 return c >= ' ' && c < 0x7F || 61 lang & LATIN1 && (unsigned char) c >= 0xA0; 62 } 63