14131aa
diff -Naur alevt-1.6.2/alevt.1x.in alevt-1.6.2-doublefont/alevt.1x.in
14131aa
--- alevt-1.6.2/alevt.1x.in	2009-05-30 18:38:27.000000000 +0300
14131aa
+++ alevt-1.6.2-doublefont/alevt.1x.in	2009-05-30 16:42:15.000000000 +0300
4f0f027
@@ -67,6 +67,9 @@
4f0f027
 in the selected set are replaced by similar looking symbols.
4f0f027
 (default: latin-1)
4f0f027
 .TP
4f0f027
+.BR \-doublefont / \-df
4f0f027
+Instructs alevt to use double sized fonts.
4f0f027
+.TP
4f0f027
 .B \-\-help
4f0f027
 Show summary of options.
4f0f027
 .TP
14131aa
diff -Naur alevt-1.6.2/exp-gfx.c alevt-1.6.2-doublefont/exp-gfx.c
14131aa
--- alevt-1.6.2/exp-gfx.c	2009-05-30 18:38:27.000000000 +0300
14131aa
+++ alevt-1.6.2-doublefont/exp-gfx.c	2009-05-30 16:42:15.000000000 +0300
4f0f027
@@ -21,7 +21,16 @@
67ef7e0
 	  int sep)
67ef7e0
 {
67ef7e0
   int x,y;
4f0f027
-  unsigned char* src= (latin1==LATIN1 ? font1_bits : font2_bits);
4f0f027
+  unsigned char* src = double_font ? 
4f0f027
+			( (latin1==LATIN1) ? font1_bits : 
4f0f027
+			  ( (latin1==LATIN2) ? font2_bits : 
4f0f027
+			  ( (latin1==KOI8) ? font3_bits :
4f0f027
+			  ( (latin1==GREEK) ? font4_bits : /* fallback */ font1_bits) ) ) ) 
4f0f027
+			  :
4f0f027
+			( (latin1==LATIN1) ? font1d_bits : 
4f0f027
+			  ( (latin1==LATIN2) ? font2d_bits : 
4f0f027
+			  ( (latin1==KOI8) ? font3d_bits :
4f0f027
+			  ( (latin1==GREEK) ? font4d_bits : /* fallback */ font1d_bits) ) ) );
67ef7e0
   int dest_x=_x*CW;
67ef7e0
   int dest_y=_y*CH;
67ef7e0
       
14131aa
diff -Naur alevt-1.6.2/font.c alevt-1.6.2-doublefont/font.c
14131aa
--- alevt-1.6.2/font.c	2009-05-30 18:38:27.000000000 +0300
14131aa
+++ alevt-1.6.2-doublefont/font.c	2009-05-30 16:42:15.000000000 +0300
4f0f027
@@ -4,4 +4,13 @@
4f0f027
 #include "font3.xbm"
4f0f027
 #include "font4.xbm"
4f0f027
 
4f0f027
+#include "font1d.xbm"
4f0f027
+#include "font2d.xbm"
4f0f027
+#include "font3d.xbm"
4f0f027
+#include "font4d.xbm"
4f0f027
 
4f0f027
+int CW;
4f0f027
+int CH;
4f0f027
+int double_font = 0;
4f0f027
+int font_width;
4f0f027
+int font_height;
14131aa
diff -Naur alevt-1.6.2/font.h alevt-1.6.2-doublefont/font.h
14131aa
--- alevt-1.6.2/font.h	2009-05-30 18:38:27.000000000 +0300
14131aa
+++ alevt-1.6.2-doublefont/font.h	2009-05-30 16:42:15.000000000 +0300
4f0f027
@@ -1,20 +1,31 @@
4f0f027
 #ifndef FONT_H
4f0f027
 #define FONT_H
4f0f027
 
4f0f027
-#include "fontsize.h"	/* the #defines from font?.xbm */
4f0f027
+// #include "fontsize.h"	/* the #defines from font?.xbm */
4f0f027
 
4f0f027
-#if font1_width != font2_width || font1_height != font2_height
4f0f027
-#error different font sizes.
4f0f027
-#endif
4f0f027
+//#if font1_width != font2_width || font1_height != font2_height
4f0f027
+//#error different font sizes.
4f0f027
+//#endif
67ef7e0
 
67ef7e0
 extern unsigned char font1_bits[];
67ef7e0
 extern unsigned char font2_bits[];
4f0f027
 extern unsigned char font3_bits[];
4f0f027
 extern unsigned char font4_bits[];
67ef7e0
 
67ef7e0
-#define font_width	font1_width
67ef7e0
-#define font_height	font1_height
67ef7e0
-#define CW		(font_width/32)        /* pixel width of a character */
67ef7e0
-#define CH		(font_height/8)        /* pixel height of a character */
4f0f027
+extern unsigned char font1d_bits[];
4f0f027
+extern unsigned char font2d_bits[];
4f0f027
+extern unsigned char font3d_bits[];
4f0f027
+extern unsigned char font4d_bits[];
67ef7e0
+
67ef7e0
+//#define font_width	font1_width
67ef7e0
+//#define font_height	font1_height
67ef7e0
+//#define CW		(font_width/32)        /* pixel width of a character */
4f0f027
+//#define CH		(font_height/8)        /* pixel height of a character */
4f0f027
+
4f0f027
+extern int CW;
4f0f027
+extern int CH;
4f0f027
+extern int double_font;
4f0f027
+extern int font_width;
4f0f027
+extern int font_height;
67ef7e0
 
67ef7e0
 #endif
14131aa
diff -Naur alevt-1.6.2/main.c alevt-1.6.2-doublefont/main.c
14131aa
--- alevt-1.6.2/main.c	2009-05-30 18:38:27.000000000 +0300
14131aa
+++ alevt-1.6.2-doublefont/main.c	2009-05-30 17:10:16.000000000 +0300
4f0f027
@@ -24,6 +24,12 @@
67ef7e0
 static int erc = 1;
67ef7e0
 static int newbttv = -1;
67ef7e0
 
4f0f027
+/* Double font size related variables */
4f0f027
+extern int double_font;
4f0f027
+extern int font_width;
4f0f027
+extern int font_height;
4f0f027
+extern int CW;
4f0f027
+extern int CH;
67ef7e0
 
67ef7e0
 static void
4f0f027
 usage(FILE *fp, int exitval)
4f0f027
@@ -44,6 +50,7 @@
4f0f027
 	    "    -[no]erc\t\t\t\t\tenabled\n"
4f0f027
 	    "    -[no]bell\t\t\t\t\tenabled\n"
4f0f027
 	    "    -charset latin-1/2/russian/iso8859-7\tlatin-1\n"
67ef7e0
+	    "    -doublefont\n"
67ef7e0
 	    "\n"
67ef7e0
 	    "  Order is important!  Each page number\n"
67ef7e0
 	    "  opens a new window with the previously\n"
4f0f027
@@ -127,6 +134,7 @@
67ef7e0
 	{ "-bell", "-b", 0 },
67ef7e0
 	{ "-nobell", "-nb", 0 },
67ef7e0
 	{ "-charset", "-latin", 1 },
67ef7e0
+	{ "-doublefont", "-df", 0 },
67ef7e0
     };
67ef7e0
     int i;
67ef7e0
 
14131aa
@@ -164,7 +172,13 @@
67ef7e0
     int opt, ind;
67ef7e0
     char *arg;
67ef7e0
 
4f0f027
-setlocale (LC_CTYPE, "");
4f0f027
+    setlocale (LC_CTYPE, "");
14131aa
+
14131aa
+    font_width  = 288;
14131aa
+    font_height = 128;
14131aa
+
14131aa
+    CW = (font_width/32);
14131aa
+    CH = (font_height/8);
4f0f027
 
67ef7e0
     setprgname(argv[0]);
67ef7e0
 
14131aa
@@ -242,6 +256,13 @@
67ef7e0
 		else
4f0f027
 		    fatal("bad charset (not latin-1/2/russian/iso8859-7)");
67ef7e0
 		break;
4f0f027
+	    case 19:	// Doublefont
67ef7e0
+		double_font = 1;
14131aa
+		font_width  = 576;
14131aa
+		font_height = 256;
14131aa
+		CW = (font_width/32);
14131aa
+		CH = (font_height/8);
67ef7e0
+		break;
67ef7e0
 	    case 12:	// debug
67ef7e0
 		debug++;
67ef7e0
 		break;
14131aa
diff -Naur alevt-1.6.2/Makefile alevt-1.6.2-doublefont/Makefile
14131aa
--- alevt-1.6.2/Makefile	2009-05-30 18:38:27.000000000 +0300
14131aa
+++ alevt-1.6.2-doublefont/Makefile	2009-05-30 16:42:15.000000000 +0300
4f0f027
@@ -33,9 +33,10 @@
67ef7e0
 alevt-cap: $(COBJS)
67ef7e0
 	$(CC) $(OPT) $(COBJS) -o alevt-cap $(EXPLIBS)
67ef7e0
 
4f0f027
-font.o: font1.xbm font2.xbm font3.xbm font4.xbm
4f0f027
-fontsize.h: font1.xbm font2.xbm font3.xbm font4.xbm
4f0f027
+font.o: font1.xbm font2.xbm font3.xbm font4.xbm font1d.xbm font2d.xbm font3d.xbm font4d.xbm
4f0f027
+fontsize.h: font1.xbm font2.xbm font3.xbm font4.xbm font1d.xbm font2d.xbm font3d.xbm font4d.xbm
4f0f027
 	fgrep -h "#define" font1.xbm font2.xbm font3.xbm font4.xbm >fontsize.h
4f0f027
+	fgrep -h "#define" font1d.xbm font2d.xbm font3d.xbm font4d.xbm >> fontsize.h
67ef7e0
 
67ef7e0
 font1.xbm: bdf2xbm $(FONT)-latin-1.bdf
4f0f027
 	./bdf2xbm font1 <$(FONT)-latin-1.bdf >font1.xbm
4f0f027
@@ -49,6 +50,18 @@
4f0f027
 font4.xbm: bdf2xbm vtxt-iso8859-7.bdf
4f0f027
 	./bdf2xbm font4 <vtxt-iso8859-7.bdf >font4.xbm
67ef7e0
 
4f0f027
+font1d.xbm: font1.xbm
4f0f027
+	/usr/bin/convert -filter Point -resize 200% font1.xbm font1d.xbm
4f0f027
+
4f0f027
+font2d.xbm: font2.xbm
4f0f027
+	/usr/bin/convert -filter Point -resize 200% font2.xbm font2d.xbm
67ef7e0
+
4f0f027
+font3d.xbm: font3.xbm
4f0f027
+	/usr/bin/convert -filter Point -resize 200% font3.xbm font3d.xbm
4f0f027
+
4f0f027
+font4d.xbm: font4.xbm
4f0f027
+	/usr/bin/convert -filter Point -resize 200% font4.xbm font4d.xbm
67ef7e0
+
67ef7e0
 bdf2xbm: bdf2xbm.c
67ef7e0
 	$(HOSTCC) bdf2xbm.c -o bdf2xbm
67ef7e0
 
4f0f027
@@ -62,7 +75,7 @@
4f0f027
 	sed s/VERSION/$(VER)/g <alevt-cap.1.in >alevt-cap.1
4f0f027
 
4f0f027
 clean:
4f0f027
-	rm -f *.o page*.txt a.out core bdf2xbm font?.xbm fontsize.h Makefile.bak
4f0f027
+	rm -f *.o page*.txt a.out core bdf2xbm font?.xbm font?d.xbm fontsize.h Makefile.bak
4f0f027
 	rm -f alevt alevt-date alevt-cap
4f0f027
 	rm -f alevt.1x alevt-date.1 alevt-cap.1
4f0f027
 	rm -f contrib/a.out ttext-*.*
14131aa
diff -Naur alevt-1.6.2/xio.c alevt-1.6.2-doublefont/xio.c
14131aa
--- alevt-1.6.2/xio.c	2009-05-30 18:38:27.000000000 +0300
14131aa
+++ alevt-1.6.2-doublefont/xio.c	2009-05-30 16:42:15.000000000 +0300
4f0f027
@@ -130,12 +130,22 @@
67ef7e0
     int i;
4f0f027
     unsigned char *font_bits;
4f0f027
     
4f0f027
-    switch(latin1) {
4f0f027
-        case LATIN1: font_bits=font1_bits; break;
4f0f027
-        case LATIN2: font_bits=font2_bits; break;
4f0f027
-        case KOI8: font_bits=font3_bits; break;
4f0f027
-	case GREEK: font_bits=font4_bits; break;
4f0f027
-        default: font_bits=font1_bits; break;
4f0f027
+    if(!double_font) {
4f0f027
+        switch(latin1) {
4f0f027
+            case LATIN1: font_bits=font1_bits; break;
4f0f027
+            case LATIN2: font_bits=font2_bits; break;
4f0f027
+            case KOI8: font_bits=font3_bits; break;
4f0f027
+            case GREEK: font_bits=font4_bits; break;
4f0f027
+            default: font_bits=font1_bits; break;
4f0f027
+        }
4f0f027
+    } else {
4f0f027
+        switch(latin1) {
4f0f027
+            case LATIN1: font_bits=font1d_bits; break;
4f0f027
+            case LATIN2: font_bits=font2d_bits; break;
4f0f027
+            case KOI8: font_bits=font3d_bits; break;
4f0f027
+            case GREEK: font_bits=font4d_bits; break;
4f0f027
+            default: font_bits=font1d_bits; break;
4f0f027
+        }
4f0f027
     }
67ef7e0
 
67ef7e0
     xio->font[0] = XCreateBitmapFromData(xio->dpy, xio->root,