diff options
| -rw-r--r-- | build.xml | 1 | ||||
| -rw-r--r-- | src/de/mud/terminal/SoftFont.java | 1145 | ||||
| -rw-r--r-- | src/de/mud/terminal/VDUInput.java | 6 | ||||
| -rw-r--r-- | src/de/mud/terminal/vt320.java | 4 | 
4 files changed, 6 insertions, 1150 deletions
@@ -187,6 +187,7 @@              -dontskipnonpubliclibraryclasses              -dontobfuscate              -dontoptimize +            -printusage ${out-folder}/proguard.usage              -keep public class * extends android.app.Activity              -keep public class * extends android.app.Service diff --git a/src/de/mud/terminal/SoftFont.java b/src/de/mud/terminal/SoftFont.java deleted file mode 100644 index ed8dae9..0000000 --- a/src/de/mud/terminal/SoftFont.java +++ /dev/null @@ -1,1145 +0,0 @@ -/* - * This file is part of "JTA - Telnet/SSH for the JAVA(tm) platform". - * - * (c) Matthias L. Jugel, Marcus Meiner 1996-2005. All Rights Reserved. - * - * Please visit http://javatelnet.org/ for updates and contact. - * - * --LICENSE NOTICE-- - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * --LICENSE NOTICE-- - * - */ - -package de.mud.terminal; - -import android.graphics.Canvas; -import android.graphics.Paint; - -/** - * Any characters that are not available in standard java fonts may be - * drawn using the softfont utility. This utility class was derived from - * the cpi fonts used in linux console drivers.<P> - * <small>Font file generated by cpi2fnt</small> - * <P> - * <B>Maintainer:</B> Marcus Mei§ner - * - * @version $Id: SoftFont.java 499 2005-09-29 08:24:54Z leo $ - * @author Matthias L. Jugel, Marcus Mei§ner - */ -public class SoftFont { -	final static private char	SF_BITMAP = 0; -	final static private char	SF_FILLRECT = 1; - -	 -	//final static private char	SF_CHAR	= 0; -	final static private char	SF_WIDTH= 1; -	final static private char	SF_HEIGHT= 2; -	final static private char	SF_TYPE  = 3; -	final static private char	SF_DATA  = 4; -	 -	java.util.Hashtable<Integer, Integer> font; -	 -	/** softfont characterdata */ -	private static char[][] fontdata = { -	 -	{0x01,8,8,SF_BITMAP, /* 1 0x01 '^A' */ -	0x7e, /* 01111110 */ -	0x81, /* 10000001 */ -	0xa5, /* 10100101 */ -	0x81, /* 10000001 */ -	0xbd, /* 10111101 */ -	0x99, /* 10011001 */ -	0x81, /* 10000001 */ -	0x7e, /* 01111110 */ -	},{ 0x02,8,8,SF_BITMAP,/* 2 0x02 '^B' */ -	0x7e, /* 01111110 */ -	0xff, /* 11111111 */ -	0xdb, /* 11011011 */ -	0xff, /* 11111111 */ -	0xc3, /* 11000011 */ -	0xe7, /* 11100111 */ -	0xff, /* 11111111 */ -	0x7e, /* 01111110 */ -	},{ 0x03,8,8,SF_BITMAP,/* 3 0x03 '^C' */ -	0x6c, /* 01101100 */ -	0xfe, /* 11111110 */ -	0xfe, /* 11111110 */ -	0xfe, /* 11111110 */ -	0x7c, /* 01111100 */ -	0x38, /* 00111000 */ -	0x10, /* 00010000 */ -	0x00, /* 00000000 */ -	},{ 0x04,8,8,SF_BITMAP,/* 4 0x04 '^D' */ -	0x10, /* 00010000 */ -	0x38, /* 00111000 */ -	0x7c, /* 01111100 */ -	0xfe, /* 11111110 */ -	0x7c, /* 01111100 */ -	0x38, /* 00111000 */ -	0x10, /* 00010000 */ -	0x00, /* 00000000 */ -	},{ 0x05,8,8,SF_BITMAP,/* 5 0x05 '^E' */ -	0x38, /* 00111000 */ -	0x7c, /* 01111100 */ -	0x38, /* 00111000 */ -	0xfe, /* 11111110 */ -	0xfe, /* 11111110 */ -	0xd6, /* 11010110 */ -	0x10, /* 00010000 */ -	0x38, /* 00111000 */ -	},{ 0x06,8,8,SF_BITMAP,/* 6 0x06 '^F' */ -	0x10, /* 00010000 */ -	0x38, /* 00111000 */ -	0x7c, /* 01111100 */ -	0xfe, /* 11111110 */ -	0xfe, /* 11111110 */ -	0x7c, /* 01111100 */ -	0x10, /* 00010000 */ -	0x38, /* 00111000 */ -	},{ 0x2666,8,8,SF_BITMAP,/* 9830 0x2666 BLACK DIAMOND */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	0x18, /* 00011000 */ -	0x3c, /* 00111100 */ -	0x3c, /* 00111100 */ -	0x18, /* 00011000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x07,8,8,SF_BITMAP,/* 7 0x07 '^G' */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	0x18, /* 00011000 */ -	0x3c, /* 00111100 */ -	0x3c, /* 00111100 */ -	0x18, /* 00011000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x08,8,8,SF_BITMAP,/* 8 0x08 '^H' */ -	0xff, /* 11111111 */ -	0xff, /* 11111111 */ -	0xe7, /* 11100111 */ -	0xc3, /* 11000011 */ -	0xc3, /* 11000011 */ -	0xe7, /* 11100111 */ -	0xff, /* 11111111 */ -	0xff, /* 11111111 */ -	},{ 0x09,8,8,SF_BITMAP,/* 9 0x09 '^I' */ -	0x00, /* 00000000 */ -	0x3c, /* 00111100 */ -	0x66, /* 01100110 */ -	0x42, /* 01000010 */ -	0x42, /* 01000010 */ -	0x66, /* 01100110 */ -	0x3c, /* 00111100 */ -	0x00, /* 00000000 */ -	},{ 0x0a,8,8,SF_BITMAP,/* 10 0x0a '^J' */ -	0xff, /* 11111111 */ -	0xc3, /* 11000011 */ -	0x99, /* 10011001 */ -	0xbd, /* 10111101 */ -	0xbd, /* 10111101 */ -	0x99, /* 10011001 */ -	0xc3, /* 11000011 */ -	0xff, /* 11111111 */ -	},{ 0x0b,8,8,SF_BITMAP,/* 11 0x0b '^K' */ -	0x0f, /* 00001111 */ -	0x07, /* 00000111 */ -	0x0f, /* 00001111 */ -	0x7d, /* 01111101 */ -	0xcc, /* 11001100 */ -	0xcc, /* 11001100 */ -	0xcc, /* 11001100 */ -	0x78, /* 01111000 */ -	},{ 0x0c,8,8,SF_BITMAP,/* 12 0x0c '^L' */ -	0x3c, /* 00111100 */ -	0x66, /* 01100110 */ -	0x66, /* 01100110 */ -	0x66, /* 01100110 */ -	0x3c, /* 00111100 */ -	0x18, /* 00011000 */ -	0x7e, /* 01111110 */ -	0x18, /* 00011000 */ -	},{ 0x0d,8,8,SF_BITMAP,/* 13 0x0d '^M' */ -	0x3f, /* 00111111 */ -	0x33, /* 00110011 */ -	0x3f, /* 00111111 */ -	0x30, /* 00110000 */ -	0x30, /* 00110000 */ -	0x70, /* 01110000 */ -	0xf0, /* 11110000 */ -	0xe0, /* 11100000 */ -	},{ 0x0e,8,8,SF_BITMAP,/* 14 0x0e '^N' */ -	0x7f, /* 01111111 */ -	0x63, /* 01100011 */ -	0x7f, /* 01111111 */ -	0x63, /* 01100011 */ -	0x63, /* 01100011 */ -	0x67, /* 01100111 */ -	0xe6, /* 11100110 */ -	0xc0, /* 11000000 */ -	},{ 0x0f,8,8,SF_BITMAP,/* 15 0x0f '^O' */ -	0x18, /* 00011000 */ -	0xdb, /* 11011011 */ -	0x3c, /* 00111100 */ -	0xe7, /* 11100111 */ -	0xe7, /* 11100111 */ -	0x3c, /* 00111100 */ -	0xdb, /* 11011011 */ -	0x18, /* 00011000 */ -	},{ 0x10,8,8,SF_BITMAP,/* 16 0x10 '^P' */ -	0x80, /* 10000000 */ -	0xe0, /* 11100000 */ -	0xf8, /* 11111000 */ -	0xfe, /* 11111110 */ -	0xf8, /* 11111000 */ -	0xe0, /* 11100000 */ -	0x80, /* 10000000 */ -	0x00, /* 00000000 */ -	},{ 0x11,8,8,SF_BITMAP,/* 17 0x11 '^Q' */ -	0x02, /* 00000010 */ -	0x0e, /* 00001110 */ -	0x3e, /* 00111110 */ -	0xfe, /* 11111110 */ -	0x3e, /* 00111110 */ -	0x0e, /* 00001110 */ -	0x02, /* 00000010 */ -	0x00, /* 00000000 */ -	},{ 0x12,8,8,SF_BITMAP,/* 18 0x12 '^R' */ -	0x18, /* 00011000 */ -	0x3c, /* 00111100 */ -	0x7e, /* 01111110 */ -	0x18, /* 00011000 */ -	0x18, /* 00011000 */ -	0x7e, /* 01111110 */ -	0x3c, /* 00111100 */ -	0x18, /* 00011000 */ -	},{ 0x13,8,8,SF_BITMAP,/* 19 0x13 '^S' */ -	0x66, /* 01100110 */ -	0x66, /* 01100110 */ -	0x66, /* 01100110 */ -	0x66, /* 01100110 */ -	0x66, /* 01100110 */ -	0x00, /* 00000000 */ -	0x66, /* 01100110 */ -	0x00, /* 00000000 */ -	},{ 0x14,8,8,SF_BITMAP,/* 20 0x14 '^T' */ -	0x7f, /* 01111111 */ -	0xdb, /* 11011011 */ -	0xdb, /* 11011011 */ -	0x7b, /* 01111011 */ -	0x1b, /* 00011011 */ -	0x1b, /* 00011011 */ -	0x1b, /* 00011011 */ -	0x00, /* 00000000 */ -	},{ 0x15,8,8,SF_BITMAP,/* 21 0x15 '^U' */ -	0x3e, /* 00111110 */ -	0x61, /* 01100001 */ -	0x3c, /* 00111100 */ -	0x66, /* 01100110 */ -	0x66, /* 01100110 */ -	0x3c, /* 00111100 */ -	0x86, /* 10000110 */ -	0x7c, /* 01111100 */ -	},{ 0x16,8,8,SF_BITMAP,/* 22 0x16 '^V' */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	0x7e, /* 01111110 */ -	0x7e, /* 01111110 */ -	0x7e, /* 01111110 */ -	0x00, /* 00000000 */ -	},{ 0x17,8,8,SF_BITMAP,/* 23 0x17 '^W' */ -	0x18, /* 00011000 */ -	0x3c, /* 00111100 */ -	0x7e, /* 01111110 */ -	0x18, /* 00011000 */ -	0x7e, /* 01111110 */ -	0x3c, /* 00111100 */ -	0x18, /* 00011000 */ -	0xff, /* 11111111 */ -	},{ 0x18,8,8,SF_BITMAP,/* 24 0x18 '^X' */ -	0x18, /* 00011000 */ -	0x3c, /* 00111100 */ -	0x7e, /* 01111110 */ -	0x18, /* 00011000 */ -	0x18, /* 00011000 */ -	0x18, /* 00011000 */ -	0x18, /* 00011000 */ -	0x00, /* 00000000 */ -	},{ 0x19,8,8,SF_BITMAP,/* 25 0x19 '^Y' */ -	0x18, /* 00011000 */ -	0x18, /* 00011000 */ -	0x18, /* 00011000 */ -	0x18, /* 00011000 */ -	0x7e, /* 01111110 */ -	0x3c, /* 00111100 */ -	0x18, /* 00011000 */ -	0x00, /* 00000000 */ -	},{ 0x1a,8,8,SF_BITMAP,/* 26 0x1a '^Z' */ -	0x00, /* 00000000 */ -	0x18, /* 00011000 */ -	0x0c, /* 00001100 */ -	0xfe, /* 11111110 */ -	0x0c, /* 00001100 */ -	0x18, /* 00011000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x1b,8,8,SF_BITMAP,/* 27 0x1b '^[' */ -	0x00, /* 00000000 */ -	0x30, /* 00110000 */ -	0x60, /* 01100000 */ -	0xfe, /* 11111110 */ -	0x60, /* 01100000 */ -	0x30, /* 00110000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x1c,8,8,SF_BITMAP,/* 28 0x1c '^\' */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	0xc0, /* 11000000 */ -	0xc0, /* 11000000 */ -	0xc0, /* 11000000 */ -	0xfe, /* 11111110 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x1d,8,8,SF_BITMAP,/* 29 0x1d '^]' */ -	0x00, /* 00000000 */ -	0x24, /* 00100100 */ -	0x66, /* 01100110 */ -	0xff, /* 11111111 */ -	0x66, /* 01100110 */ -	0x24, /* 00100100 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x1e,8,8,SF_BITMAP,/* 30 0x1e '^^' */ -	0x00, /* 00000000 */ -	0x18, /* 00011000 */ -	0x3c, /* 00111100 */ -	0x7e, /* 01111110 */ -	0xff, /* 11111111 */ -	0xff, /* 11111111 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x1f,8,8,SF_BITMAP,/* 31 0x1f '^_' */ -	0x00, /* 00000000 */ -	0xff, /* 11111111 */ -	0xff, /* 11111111 */ -	0x7e, /* 01111110 */ -	0x3c, /* 00111100 */ -	0x18, /* 00011000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x7f,8,8,SF_BITMAP,/* 127 0x7f '' */ -	0x00, /* 00000000 */ -	0x10, /* 00010000 */ -	0x38, /* 00111000 */ -	0x6c, /* 01101100 */ -	0xc6, /* 11000110 */ -	0xc6, /* 11000110 */ -	0xfe, /* 11111110 */ -	0x00, /* 00000000 */ -	},{ 0x2591,8,8,SF_BITMAP,/* LIGHT SHADE */ -	0x22, /* 00100010 */ -	0x88, /* 10001000 */ -	0x22, /* 00100010 */ -	0x88, /* 10001000 */ -	0x22, /* 00100010 */ -	0x88, /* 10001000 */ -	0x22, /* 00100010 */ -	0x88, /* 10001000 */ -	},{ 0x2592,8,8,SF_BITMAP,/* MEDIUM SHADE */ -	0x55, /* 01010101 */ -	0xaa, /* 10101010 */ -	0x55, /* 01010101 */ -	0xaa, /* 10101010 */ -	0x55, /* 01010101 */ -	0xaa, /* 10101010 */ -	0x55, /* 01010101 */ -	0xaa, /* 10101010 */ -	},{ 0x2593,8,8,SF_BITMAP,/* DARK SHADE */ -	0x77, /* 01110111 */ -	0xdd, /* 11011101 */ -	0x77, /* 01110111 */ -	0xdd, /* 11011101 */ -	0x77, /* 01110111 */ -	0xdd, /* 11011101 */ -	0x77, /* 01110111 */ -	0xdd, /* 11011101 */ -	},{ 0x221a,8,8,SF_BITMAP,/* SQUARE ROOT */ -	0x78, /* 01111000 */ -	0x0c, /* 00001100 */ -	0x18, /* 00011000 */ -	0x30, /* 00110000 */ -	0x7c, /* 01111100 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	0x00, /* 00000000 */ -	},{ 0x2320,8,8,SF_FILLRECT,/* UPPER INTERVAL*/ -		0x4031, -		0x3127, -		0x6122, -		/* 00001110 */ -		/* 00011011 */ -		/* 00011011 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2321,8,8,SF_FILLRECT,/* BOTTOM HALF INTEGRAL */ -		0x3027, -		0x0522, -		0x1731, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 11011000 */ -		/* 11011000 */ -		/* 01110000 */ -	},{ 0x25a0,8,8,SF_FILLRECT,/* BLACK SQUARE */ -		0x2244, -		/* 00000000 */ -		/* 00000000 */ -		/* 00111100 */ -		/* 00111100 */ -		/* 00111100 */ -		/* 00111100 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2502,8,8,SF_FILLRECT,/*BOX DRAWINGS LIGHT VERTICAL*/ -		0x3028, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2524,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT VERTICAL AND LEFT */ -		0x3028, -		0x0431, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 11111000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2561,8,8,SF_FILLRECT,/*BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE*/ -		0x3028, -		0x0231, -		0x0431, -		/* 00011000 */ -		/* 00011000 */ -		/* 11111000 */ -		/* 00011000 */ -		/* 11111000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2562,8,8,SF_FILLRECT,/* BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE */ -		0x2028, -		0x5028, -		0x0421, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 11110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2556,8,8,SF_FILLRECT,/* BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE */ -		0x0471, -		0x2523, -		0x5523, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 11111110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2555,8,8,SF_FILLRECT,/* BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE */ -		0x3226, -		0x0231, -		0x0431, -		/* 00000000 */ -		/* 00000000 */ -		/* 11111000 */ -		/* 00011000 */ -		/* 11111000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2563,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE VERTICAL AND LEFT*/ -		0x2022, -		0x0221, -		0x0421, -		0x2424, -		0x5028, -		/* 00110110 */ -		/* 00110110 */ -		/* 11110110 */ -		/* 00000110 */ -		/* 11110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2551,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE VERTICAL */ -		0x2028, -		0x5028, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2557,8,8,SF_FILLRECT,/*  BOX DRAWINGS DOUBLE DOWN AND LEFT */ -		0x0271, -		0x5325, -		0x0441, -		0x2523, -		/* 00000000 */ -		/* 00000000 */ -		/* 11111110 */ -		/* 00000110 */ -		/* 11110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x255d,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE UP AND LEFT */ -		0x2022, -		0x0241, -		0x5025, -		0x0451, -		/* 00110110 */ -		/* 00110110 */ -		/* 11110110 */ -		/* 00000110 */ -		/* 11111110 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x255c,8,8,SF_FILLRECT,/* BOX DRAWINGS UP DOUBLE AND LEFT SINGLE */ -		0x2024, -		0x5024, -		0x0471, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 11111110 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x255b,8,8,SF_FILLRECT,/* BOX DRAWINGS UP SINGLE AND LEFT DOUBLE */ -		0x3025, -		0x0231, -		0x0431, -		/* 00011000 */ -		/* 00011000 */ -		/* 11111000 */ -		/* 00011000 */ -		/* 11111000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2510,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT DOWN AND LEFT */ -		0x0451, -		0x3523, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 11111000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2514,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT UP AND RIGHT */ -		0x3025, -		0x5431, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2534,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT UP AND HORIZONTAL */ -		0x3024, -		0x0481, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x252c,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT DOWN AND HORIZONTAL */ -		0x0481, -		0x3523, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x251c,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT VERTICAL AND RIGHT */ -		0x3028, -		0x5431, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2500,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT HORIZONTAL */ -		0x0481, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2594,8,8,SF_FILLRECT,/* UPPER 1/8 (1st scanline) */ -		0x0081, -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x25ac,8,8,SF_FILLRECT,/* LOWER 1/8 (7nd scanline) */ -		0x0781, -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x253c,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL */ -		0x3028, -		0x0481, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 11111111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x255e,8,8,SF_FILLRECT,/* BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE */ -		0x3028, -		0x5231, -		0x5431, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011111 */ -		/* 00011000 */ -		/* 00011111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x255f,8,8,SF_FILLRECT,/* BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE */ -		0x2028, -		0x5028, -		0x7411, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x255a,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE UP AND RIGHT */ -		0x2025, -		0x5023, -		0x7211, -		0x4441, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110111 */ -		/* 00110000 */ -		/* 00111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2554,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE DOWN AND RIGHT */ -		0x2261, -		0x2325, -		0x5424, -		0x7411, -		/* 00000000 */ -		/* 00000000 */ -		/* 00111111 */ -		/* 00110000 */ -		/* 00110111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2569,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE UP AND HORIZONTAL */ -		0x2022, -		0x0241, -		0x5022, -		0x5231, -		0x0481, -		/* 00110110 */ -		/* 00110110 */ -		/* 11110111 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2566,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL */ -		0x0281, -		0x0441, -		0x2523, -		0x5431, -		0x5523, -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 11110111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2560,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE VERTICAL AND RIGHT */ -		0x2028, -		0x5022, -		0x5231, -		0x5431, -		0x5623, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110111 */ -		/* 00110000 */ -		/* 00110111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2550,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE HORIZONTAL */ -		0x0281, -		0x0481, -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x256c,8,8,SF_FILLRECT,/* BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL */ -		0x2022, -		0x0241, -		0x5022, -		0x5231, -		0x0441, -		0x2523, -		0x5431, -		0x5523, -		/* 00110110 */ -		/* 00110110 */ -		/* 11110111 */ -		/* 00000000 */ -		/* 11110111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2567,8,8,SF_FILLRECT,/* BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE */ -		0x3022, -		0x0281, -		0x0481, -		/* 00011000 */ -		/* 00011000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2568,8,8,SF_FILLRECT,/* BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE */ -		0x2024, -		0x5024, -		0x0481, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2564,8,8,SF_FILLRECT,/* BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE */ -		0x0281, -		0x0481, -		0x3523, -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2565,8,8,SF_FILLRECT,/* BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE */ -		0x0481, -		0x2523, -		0x5523, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x2559,8,8,SF_FILLRECT,/* BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE */ -		0x2024, -		0x5024, -		0x2461, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2558,8,8,SF_FILLRECT,/* BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE */ -		0x3025, -		0x5231, -		0x5431, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011111 */ -		/* 00011000 */ -		/* 00011111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2552,8,8,SF_FILLRECT,/* BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE */ -		0x3226, -		0x5231, -		0x5431, -		/* 00000000 */ -		/* 00000000 */ -		/* 00011111 */ -		/* 00011000 */ -		/* 00011111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2553,8,8,SF_FILLRECT,/* BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE */ -		0x2461, -		0x2523, -		0x5523, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00111111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x256b,8,8,SF_FILLRECT,/* BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE */ -		0x2028, -		0x5028, -		0x0481, -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 11111111 */ -		/* 00110110 */ -		/* 00110110 */ -		/* 00110110 */ -	},{ 0x256a,8,8,SF_FILLRECT,/* BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE */ -		0x3028, -		0x0281, -		0x0481, -		/* 00011000 */ -		/* 00011000 */ -		/* 11111111 */ -		/* 00011000 */ -		/* 11111111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2518,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT UP AND LEFT */ -		0x3025, -		0x0431, -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 11111000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x250c,8,8,SF_FILLRECT,/* BOX DRAWINGS LIGHT DOWN AND RIGHT */ -		0x3451, -		0x3523, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00011111 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00011000 */ -	},{ 0x2588,8,8,SF_FILLRECT,/* FULL BLOCK */ -		0x0088, -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -	},{ 0x2584,8,8,SF_FILLRECT,/* LOWER HALF BLOCK */ -		0x0484, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -	},{ 0x258c,8,8,SF_FILLRECT,/* LEFT HALF BLOCK */ -		0x0048, -		/* 11110000 */ -		/* 11110000 */ -		/* 11110000 */ -		/* 11110000 */ -		/* 11110000 */ -		/* 11110000 */ -		/* 11110000 */ -		/* 11110000 */ -	},{ 0x2590,8,8,SF_FILLRECT,/* RIGHT HALF BLOCK */ -		0x4048, -		/* 00001111 */ -		/* 00001111 */ -		/* 00001111 */ -		/* 00001111 */ -		/* 00001111 */ -		/* 00001111 */ -		/* 00001111 */ -		/* 00001111 */ -	},{ 0x2580,8,8,SF_FILLRECT,/* UPPER HALF BLOCK */ -		0x0084, -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2261,8,8,SF_FILLRECT,/* EQUIVALENT SIGN */ -		0x2081, -		0x4081, -		0x6081, -		/* 00000000 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -		/* 11111111 */ -		/* 00000000 */ -	},{ 0x221e,8,8,SF_BITMAP,/* INFINITY */ -		0x00, -		0x00, -		0x7e, -		0xdb, -		0xdb, -		0x7e, -		0x00, -		0x00, -		/* 00000000 */ -		/* 00000000 */ -		/* 01111110 */ -		/* 11011011 */ -		/* 11011011 */ -		/* 01111110 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x207f,8,8,SF_FILLRECT,/* small superscript n */ -		0x1041, -		0x1124, -		0x4124, -		/* 01111000 */ -		/* 01101100 */ -		/* 01101100 */ -		/* 01101100 */ -		/* 01101100 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x00b2,8,8,SF_BITMAP,/* small superscript 2 */ -		0x70, /* 01110000 */ -		0x1c, /* 00011100 */ -		0x38, /* 00111000 */ -		0x60, /* 01100000 */ -		0x78, /* 01111000 */ -		0x00, /* 00000000 */ -		0x00, /* 00000000 */ -		0x00, /* 00000000 */ -	},{ 0x2219,8,8,SF_FILLRECT,/* BULLET OPERATOR */ -		0x3322, -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00011000 */ -		/* 00011000 */ -		/* 00000000 */ -		/* 00000000 */ -		/* 00000000 */ -	},{ 0x2191,8,8,SF_BITMAP,/* UP ARROW */ -		0x08, /* 00001000 */ -		0x1c, /* 00011100 */ -		0x3e, /* 00111110 */ -		0x7f, /* 01111111 */ -		0x1c, /* 00011100 */ -		0x1c, /* 00011100 */ -		0x1c, /* 00011100 */ -		0x1c, /* 00011100 */ -	},{ 0x2193,8,8,SF_BITMAP,/* DOWN ARROW */ -		0x1c, /* 00011100 */ -		0x1c, /* 00011100 */ -		0x1c, /* 00011100 */ -		0x1c, /* 00011100 */ -		0x7f, /* 01111111 */ -		0x3e, /* 00111110 */ -		0x1c, /* 00011100 */ -		0x08, /* 00001000 */ -	},{ 0x25ba,8,8,SF_BITMAP,/* RIGHT ARROW (TRIANGLE ONLY) */ -		0x00, /* 00000000 */ -		0x40, /* 01000000 */ -		0x60, /* 01100000 */ -		0x7c, /* 01111100 */ -		0x70, /* 01110000 */ -		0x60, /* 01100000 */ -		0x40, /* 01000000 */ -		0x00, /* 00000000 */ -	},{ 0x25c4,8,8,SF_BITMAP,/* LEFT ARROW (TRIANGLE ONLY) */ -		0x00, /* 00000000 */ -		0x02, /* 00000010 */ -		0x06, /* 00000110 */ -		0x3e, /* 00111110 */ -		0x0e, /* 00001110 */ -		0x06, /* 00000110 */ -		0x02, /* 00000010 */ -		0x00, /* 00000000 */ -	}}; - -	public SoftFont() { -		font = new java.util.Hashtable<Integer, Integer>(); -		for (int i=0;i<fontdata.length;i++) -			font.put(new Integer(fontdata[i][0]),new Integer(i)); -	} - -	public boolean inSoftFont(char c) { -		boolean insoftfont; - -		insoftfont = (null!=font.get(new Integer(c))); -		if (!insoftfont && (int)c>=0x100) { -			System.out.println("Character "+((int)c)+" not in softfont"); -		} -		return insoftfont; -	} - -	public void drawChar(Canvas g, Paint p, char c,int x,int y,int cw,int ch) { -		double	dw,dh; -		Object	Ientry; -		int	w,h,entry,i,fontwidth,fontheight; -		 -		Ientry = font.get(new Integer(c)); -		if (Ientry == null) -			return; -		entry = ((Integer)Ientry).intValue(); -		fontwidth = fontdata[entry][SF_WIDTH]; -		fontheight = fontdata[entry][SF_HEIGHT]; - -		dw = cw*1.0/fontwidth; -		dh = ch*1.0/fontheight; - -		switch (fontdata[entry][SF_TYPE]) { -		case SF_BITMAP: -			p.setStrokeWidth(0); -			for (h=0;h<fontheight;h++) { -				for (w=0;w<fontwidth;w++) { -					//FIXME: 8 bit max currently... -					if (0!=(fontdata[entry][h+SF_DATA] & (1<<(7-w)))) { -						g.drawPoint( -							x+(int)(w*dw), -							y+(int)(h*dh), -							p -						); -					} -				} -			} -			break; -		case SF_FILLRECT: -			i=SF_DATA; -			while (i<fontdata[entry].length) { -				int	xw,xh; - -				w=(fontdata[entry][i]&0xF000)>>12; -				h=(fontdata[entry][i]&0x0F00)>>8; -				xw = (fontdata[entry][i]&0x00F0)>>4; -				xh = (fontdata[entry][i]&0x000F); -				g.drawRect( -					x+(int)(w*dw), -					y+(int)(h*dh), -					((int)((w+xw)*dw))-(int)(w*dw), -					((int)((h+xh)*dh))-(int)(h*dh), -					p -				); -				i++; -			} -			break; -		default: -			break; -		} -	} -} diff --git a/src/de/mud/terminal/VDUInput.java b/src/de/mud/terminal/VDUInput.java index ca7e68b..43c88de 100644 --- a/src/de/mud/terminal/VDUInput.java +++ b/src/de/mud/terminal/VDUInput.java @@ -1,7 +1,7 @@  /*   * This file is part of "JTA - Telnet/SSH for the JAVA(tm) platform".   * - * (c) Matthias L. Jugel, Marcus Mei§ner 1996-2005. All Rights Reserved. + * (c) Matthias L. Jugel, Marcus Meißner 1996-2005. All Rights Reserved.   *   * Please visit http://javatelnet.org/ for updates and contact.   * @@ -29,7 +29,7 @@ import java.util.Properties;  /**   * An interface for a terminal that accepts input from keyboard and mouse.   * - * @author Matthias L. Jugel, Marcus Mei§ner + * @author Matthias L. Jugel, Marcus Meißner   * @version $Id: VDUInput.java 499 2005-09-29 08:24:54Z leo $   */  public interface VDUInput { @@ -40,7 +40,7 @@ public interface VDUInput {    public final static int KEY_ACTION = 0x08; -   +    /**     * Direct access to writing data ...     * @param b diff --git a/src/de/mud/terminal/vt320.java b/src/de/mud/terminal/vt320.java index 7c1bbb3..05169ad 100644 --- a/src/de/mud/terminal/vt320.java +++ b/src/de/mud/terminal/vt320.java @@ -30,10 +30,10 @@ import java.util.Properties;  /**   * Implementation of a VT terminal emulation plus ANSI compatible.   * <P> - * <B>Maintainer:</B> Marcus Mei�ner + * <B>Maintainer:</B> Marcus Meißner   *   * @version $Id: vt320.java 507 2005-10-25 10:14:52Z marcus $ - * @author  Matthias L. Jugel, Marcus Mei�ner + * @author  Matthias L. Jugel, Marcus Meißner   */  public abstract class vt320 extends VDUBuffer implements VDUInput {  | 
