- new patch for chrilic fonts from Alexey Loukianov (mooroon2@mail.ru)

- updated doublefont patch
This commit is contained in:
Lucian Langa 2009-04-10 12:48:12 +00:00
commit 4f0f027f24
3 changed files with 12451 additions and 88 deletions

View file

@ -1,76 +1,122 @@
diff -Naur alevt-1.6.2/exp-gfx.c alevt-1.6.2-mod/exp-gfx.c
--- alevt-1.6.2/exp-gfx.c 2007-12-03 04:56:06.000000000 +0200
+++ alevt-1.6.2-mod/exp-gfx.c 2008-12-03 22:32:16.000000000 +0200
@@ -21,7 +21,9 @@
diff -Nur alevt-1.6.2.rus+greek/alevt.1x.in alevt-1.6.2.doublefont/alevt.1x.in
--- alevt-1.6.2.rus+greek/alevt.1x.in 2009-04-10 06:59:25.000000000 +0400
+++ alevt-1.6.2.doublefont/alevt.1x.in 2009-04-10 07:26:06.000000000 +0400
@@ -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 -Nur alevt-1.6.2.rus+greek/exp-gfx.c alevt-1.6.2.doublefont/exp-gfx.c
--- alevt-1.6.2.rus+greek/exp-gfx.c 2009-04-10 06:59:25.000000000 +0400
+++ alevt-1.6.2.doublefont/exp-gfx.c 2009-04-10 07:28:15.000000000 +0400
@@ -21,7 +21,16 @@
int sep)
{
int x,y;
- unsigned char* src= (latin1 ? font1_bits : font2_bits);
+ unsigned char* src= double_font?
+ (latin1? font3_bits : font4_bits) :
+ (latin1? font1_bits : font2_bits);
- 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-mod/font.c
--- alevt-1.6.2/font.c 1999-10-08 01:20:00.000000000 +0300
+++ alevt-1.6.2-mod/font.c 2008-12-03 21:26:36.000000000 +0200
@@ -1,3 +1,5 @@
#define static /* I want them global */
#include "font1.xbm"
#include "font2.xbm"
+#include "font3.xbm"
+#include "font4.xbm"
diff -Naur alevt-1.6.2/font.h alevt-1.6.2-mod/font.h
--- alevt-1.6.2/font.h 1999-10-08 01:24:02.000000000 +0300
+++ alevt-1.6.2-mod/font.h 2008-12-03 22:30:02.000000000 +0200
@@ -9,10 +9,18 @@
diff -Nur alevt-1.6.2.rus+greek/font.c alevt-1.6.2.doublefont/font.c
--- alevt-1.6.2.rus+greek/font.c 2009-04-10 06:59:25.000000000 +0400
+++ alevt-1.6.2.doublefont/font.c 2009-04-10 07:28:15.000000000 +0400
@@ -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 -Nur alevt-1.6.2.rus+greek/font.h alevt-1.6.2.doublefont/font.h
--- alevt-1.6.2.rus+greek/font.h 2009-04-10 06:59:25.000000000 +0400
+++ alevt-1.6.2.doublefont/font.h 2009-04-10 07:28:15.000000000 +0400
@@ -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[];
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 */
+//externint CW = (font_width/32); /* pixel width of a character */
+int CW;
+int CH;
+int font_width;
+int font_height;
+int double_font;
+//#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-mod/main.c
--- alevt-1.6.2/main.c 2007-12-03 05:45:29.000000000 +0200
+++ alevt-1.6.2-mod/main.c 2008-12-04 08:16:13.000000000 +0200
@@ -22,6 +22,11 @@
static int fine_tune = 1; // auto = 999;
diff -Nur alevt-1.6.2.rus+greek/main.c alevt-1.6.2.doublefont/main.c
--- alevt-1.6.2.rus+greek/main.c 2009-04-10 07:16:37.000000000 +0400
+++ alevt-1.6.2.doublefont/main.c 2009-04-10 07:28:15.000000000 +0400
@@ -24,6 +24,12 @@
static int erc = 1;
static int newbttv = -1;
+int double_font = 0;
+int font_width = 288;
+int font_height = 128;
+int CW;
+int CH;
+/* 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
@@ -43,6 +48,7 @@
" -[no]erc\t\t\tenabled\n"
" -[no]bell\t\t\tenabled\n"
" -charset latin-1/2\t\tlatin-1\n"
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"
@@ -126,6 +132,7 @@
@@ -127,6 +134,7 @@
{ "-bell", "-b", 0 },
{ "-nobell", "-nb", 0 },
{ "-charset", "-latin", 1 },
@ -78,70 +124,114 @@ diff -Naur alevt-1.6.2/main.c alevt-1.6.2-mod/main.c
};
int i;
@@ -163,6 +170,9 @@
@@ -164,7 +172,7 @@
int opt, ind;
char *arg;
+ CW = (font_width/32);
+ CH = (font_height/8);
+
-setlocale (LC_CTYPE, "");
+ setlocale (LC_CTYPE, "");
setprgname(argv[0]);
fdset_init(fds);
@@ -235,6 +245,13 @@
@@ -242,6 +250,9 @@
else
fatal("bad charset (not latin-1/2)");
fatal("bad charset (not latin-1/2/russian/iso8859-7)");
break;
+ case 19: // double font size
+ 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-mod/Makefile
--- alevt-1.6.2/Makefile 2007-12-03 07:19:54.000000000 +0200
+++ alevt-1.6.2-mod/Makefile 2008-12-03 22:38:58.000000000 +0200
@@ -33,8 +33,8 @@
@@ -253,6 +264,14 @@
break;
}
+ /* Font caps inits */
+
+ font_width = (double_font==0) ? 288 : 576;
+ font_height = (double_font==0) ? 128 : 256;
+
+ CW = (font_width/32);
+ CH = (font_height/8);
+
if (parent == 0)
start(argc, argv, 0, 0x900, ANY_SUB);
diff -Nur alevt-1.6.2.rus+greek/Makefile alevt-1.6.2.doublefont/Makefile
--- alevt-1.6.2.rus+greek/Makefile 2009-04-10 06:59:25.000000000 +0400
+++ alevt-1.6.2.doublefont/Makefile 2009-04-10 07:28:15.000000000 +0400
@@ -33,9 +33,10 @@
alevt-cap: $(COBJS)
$(CC) $(OPT) $(COBJS) -o alevt-cap $(EXPLIBS)
-font.o: font1.xbm font2.xbm
-fontsize.h: font1.xbm font2.xbm
+font.o: font1.xbm font2.xbm font3.xbm font4.xbm
+fontsize.h: font1.xbm font2.xbm font3.xbm font4.xbm
fgrep -h "#define" font1.xbm font2.xbm >fontsize.h
-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
@@ -43,6 +43,14 @@
font2.xbm: bdf2xbm $(FONT)-latin-2.bdf
./bdf2xbm font2 <$(FONT)-latin-2.bdf >font2.xbm
./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
+font3.xbm: bdf2xbm $(FONT)-latin-1.bdf
+ ./bdf2xbm font1 <$(FONT)-latin-1.bdf >font3.xbm
+ /usr/bin/convert -filter Point -resize 200% font1.xbm font3.xbm
+font1d.xbm: font1.xbm
+ /usr/bin/convert -filter Point -resize 200% font1.xbm font1d.xbm
+
+font4.xbm: bdf2xbm $(FONT)-latin-2.bdf
+ ./bdf2xbm font1 <$(FONT)-latin-1.bdf >font4.xbm
+ /usr/bin/convert -filter Point -resize 200% font2.xbm font4.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
diff -Naur alevt-1.6.2/xio.c alevt-1.6.2-mod/xio.c
--- alevt-1.6.2/xio.c 2007-12-03 08:18:04.000000000 +0200
+++ alevt-1.6.2-mod/xio.c 2008-12-03 22:33:06.000000000 +0200
@@ -130,7 +130,9 @@
@@ -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 -Nur alevt-1.6.2.rus+greek/xio.c alevt-1.6.2.doublefont/xio.c
--- alevt-1.6.2.rus+greek/xio.c 2009-04-10 06:59:25.000000000 +0400
+++ alevt-1.6.2.doublefont/xio.c 2009-04-10 07:28:15.000000000 +0400
@@ -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,
- latin1 ? font1_bits : font2_bits,
+ double_font?
+ (latin1 ? font3_bits : font1_bits) :
+ (latin1 ? font1_bits : font2_bits),
font_width, font_height);
xio->font[1] = XCreatePixmap(xio->dpy, xio->root,
font_width, font_height*2, 1);

12267
alevt-1.6.2-rus-greek.patch Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,15 +1,16 @@
Name: alevt
Version: 1.6.2
Release: 9%{?dist}
Release: 10%{?dist}
Summary: Teletext decoder/browser
Group: Applications/Multimedia
Group: Applications/Multimedia
License: GPLv2
URL: http://goron.de/~froese
Source: http://goron.de/~froese/%{name}/%{name}-%{version}.tar.gz
Source1: alevt.desktop
Patch0: alevt-1.6.2-pixmap.patch
Patch1: alevt-1.6.2-manpath.patch
Patch2: alevt-1.6.2-doublefont.patch
Patch2: alevt-1.6.2-rus-greek.patch
Patch3: alevt-1.6.2-doublefont.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: libX11-devel
BuildRequires: libpng-devel
@ -29,6 +30,7 @@ one to capture teletext pages from scripts.
%patch0 -p1 -b .pixmap
%patch1 -p1 -b .manpath
%patch2 -p1 -b .doublefont
%patch3 -p1 -b .rusgreek
%build
# alevt does not have standard build system, so we populate OPT,
@ -61,6 +63,10 @@ rm -rf %{buildroot}
%doc README CHANGELOG COPYRIGHT
%changelog
* Fri Apr 10 2009 Lucian Langa <cooly@gnome.eu.org> - 1.6.2-10
- new patch for chrilic fonts from Alexey Loukianov (mooroon2@mail.ru)
- updated doublefont patch
* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild