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