update to big5con-0.92h
PR: ports/45821 Submitted by: Statue <statue@freebsd.sinica.edu.tw>
This commit is contained in:
parent
5260a5064f
commit
671d1c1f20
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=73671
@ -6,43 +6,16 @@
|
||||
#
|
||||
|
||||
PORTNAME= big5con
|
||||
PORTVERSION= 0.92e
|
||||
PORTREVISION= 1
|
||||
PORTVERSION= 0.92h
|
||||
CATEGORIES= chinese
|
||||
MASTER_SITES= ftp://freebsd.csie.nctu.edu.tw/pub/taiwan/NTU/woju/source/ \
|
||||
ftp://freebsd.csie.nctu.edu.tw/pub/taiwan/NTU/woju/binary/
|
||||
DISTFILES= big5con-0.92e.tgz b5cbin-pa.tgz
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
|
||||
MASTER_SITE_SUBDIR= ${PORTNAME}
|
||||
|
||||
MAINTAINER= ports@FreeBSD.org
|
||||
MAINTAINER= statue@freebsd.sinica.edu.tw
|
||||
|
||||
ONLY_FOR_ARCHS= i386
|
||||
|
||||
EXTRACT_ONLY= ${DISTNAME}.tgz
|
||||
USE_REINPLACE= yes
|
||||
REINPLACE_ARGS= # empty
|
||||
|
||||
# With the help from pa@freebsd.ee.ntu.edu.tw
|
||||
# +0.92d use kc-fonts, whcih can be included in cdrom, instead of taipei-fonts.
|
||||
# Note: 0.92c is restricted due to the taipei-fonts-copyright.
|
||||
#
|
||||
# 1999/02/12: 0.92d -> 0.92e
|
||||
# Fix some bugs
|
||||
# ftp://bsd.sinica.edu.tw/pub/FreeBSD/taiwan/users/woju/source/b5c-d2e.patch
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
post-patch:
|
||||
.if ${OSVERSION} > 500012
|
||||
.for i in include/ksymdef.h src/term.c src/vc.c src/vga.c
|
||||
@${REINPLACE_CMD} 's,machine/console.h>,sys/consio.h>@#include <sys/kbio.h>@,' ${WRKSRC}/${i} | tr '@' '\n' > ${WRKSRC}/${i}.bak && \
|
||||
${MV} ${WRKSRC}/${i}.bak ${WRKSRC}/${i}
|
||||
.endfor
|
||||
.endif
|
||||
pre-install:
|
||||
@if [ ! -f ${PREFIX}/lib/fonts/kc16.smf ]; then \
|
||||
tar xvfzp ${DISTDIR}/b5cbin-pa.tgz -C ${PREFIX}; \
|
||||
fi
|
||||
|
||||
post-install:
|
||||
@${CAT} ${PKGMESSAGE}
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
.include <bsd.port.mk>
|
||||
|
@ -1,2 +1 @@
|
||||
MD5 (big5con-0.92e.tgz) = 3ba7febf594c464d7953d8a588c1fafb
|
||||
MD5 (b5cbin-pa.tgz) = 3e0d4fce0822a5e3cc6f310c513507d5
|
||||
MD5 (big5con-0.92h.tar.gz) = e17f7d0af1b99c72589948c9b596ba25
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- big5con.cfg.orig Thu Oct 8 13:07:27 1998
|
||||
+++ big5con.cfg Tue Nov 26 11:45:51 2002
|
||||
@@ -157,7 +157,7 @@
|
||||
1200
|
||||
# Mouse device file name
|
||||
MouseDev:
|
||||
- /dev/mouse
|
||||
+ /dev/sysmouse
|
||||
|
||||
# Use hard scroll
|
||||
HardScroll:
|
@ -1,11 +0,0 @@
|
||||
--- big5con.mk.orig Thu Oct 8 13:09:50 1998
|
||||
+++ big5con.mk Tue Nov 26 11:45:51 2002
|
||||
@@ -29,7 +29,7 @@
|
||||
-DXCIN_DIR=\"$(XCIN_DIR)\" $(ALT_META) $(EXTRA_OPTS)
|
||||
CC = gcc
|
||||
#CFLAGS = -O2 -m486 $(OPTS)
|
||||
-CFLAGS += -O2 $(OPTS)
|
||||
+CFLAGS += $(OPTS)
|
||||
LD = gcc $(CFLAGS)
|
||||
RM = rm -f
|
||||
INSTALL = install -c
|
@ -1,38 +0,0 @@
|
||||
--- fld/fld.c.orig Wed May 20 17:49:32 1998
|
||||
+++ fld/fld.c Tue Nov 26 11:45:51 2002
|
||||
@@ -55,7 +55,7 @@
|
||||
int shmid;
|
||||
struct shmid_ds shmseg;
|
||||
|
||||
- shmkey = ftok(CONFIG_NAME, fnum);
|
||||
+ shmkey = 5000 + (fnum & 0x7F);
|
||||
if ((shmid = shmget(shmkey, sizeof(struct fontInfo), 0444)) < 0)
|
||||
return;
|
||||
shmctl(shmid, IPC_STAT, &shmseg);
|
||||
@@ -70,7 +70,7 @@
|
||||
extern int forceLoad;
|
||||
|
||||
if (forceLoad) return(EOF);
|
||||
- shmkey = ftok(SHMEM_NAME, fnum);
|
||||
+ shmkey = 5000 + (fnum & 0x7F);
|
||||
if (shmget(shmkey, 1, 0444) == EOF) return(EOF);
|
||||
return(0);
|
||||
}
|
||||
@@ -82,7 +82,7 @@
|
||||
int shmid;
|
||||
u_char *shmbuff;
|
||||
|
||||
- shmkey = ftok(SHMEM_NAME, fi->type);
|
||||
+ shmkey = 5000 + (fi->type & 0x0000007F);
|
||||
shmid = shmget(shmkey, fi->size+sizeof(struct fontInfo),
|
||||
IPC_CREAT|0666);
|
||||
fprintf( stderr,"%ld\n",fi->size+sizeof(struct fontInfo) );
|
||||
@@ -120,7 +120,7 @@
|
||||
int shmid;
|
||||
struct fontInfo *fi;
|
||||
|
||||
- shmkey = ftok(CONFIG_NAME, fnum);
|
||||
+ shmkey = 5000 + (fnum & 0x7F);
|
||||
if ((shmid = shmget(shmkey, sizeof(struct fontInfo), 0444)) < 0)
|
||||
return(0);
|
||||
fi = (struct fontInfo*)shmat(shmid, 0, SHM_RDONLY);
|
@ -1,34 +0,0 @@
|
||||
--- include/mem.h.old Tue Jan 25 20:16:57 2000
|
||||
+++ include/mem.h Tue Jan 25 20:30:48 2000
|
||||
@@ -46,6 +46,7 @@
|
||||
"d" ((u_short) port));
|
||||
}
|
||||
|
||||
+#if 0
|
||||
static inline
|
||||
void lzero(void *head, int n)
|
||||
{
|
||||
@@ -93,11 +94,23 @@
|
||||
"D" ((long)head)
|
||||
:"cx","di");
|
||||
}
|
||||
+#endif
|
||||
|
||||
extern u_char PortInb(u_short);
|
||||
+#if 1
|
||||
+#define bzero(b, len) bzero(b, len)
|
||||
+#define bzero2(b, len) bzero(b, len)
|
||||
+#define lzero(b, len) bzero(b, len)
|
||||
+#define wzero(b, len) bzero(b, len)
|
||||
+#define bmove(dst, src, len) bcopy(src, dst, len)
|
||||
+#define brmove(dst, src, len) bcopy(src, dst, len)
|
||||
+#define wmove(dst, src, len) bcopy(src, dst, len)
|
||||
+#define lmove(dst, src, len) bcopy(src, dst, len)
|
||||
+#else
|
||||
extern void wzero(void *, int);
|
||||
extern void wmove(void *, void *, int);
|
||||
extern void lmove(void *, void *, int);
|
||||
+#endif
|
||||
extern void SafeFree(void **);
|
||||
|
||||
#endif
|
@ -1,15 +0,0 @@
|
||||
--- include/vga.h.orig Fri Jan 24 16:08:01 1997
|
||||
+++ include/vga.h Mon Jan 31 14:13:08 2000
|
||||
@@ -59,7 +59,11 @@
|
||||
#if defined(linux)
|
||||
#define GRAPH_BASE 0xA0000
|
||||
#elif defined(__FreeBSD__)
|
||||
-#define GRAPH_BASE 0x0
|
||||
+# if (__FreeBSD__ <= 3)
|
||||
+# define GRAPH_BASE 0x0
|
||||
+# else
|
||||
+# define GRAPH_BASE 0xA0000
|
||||
+# endif
|
||||
#endif
|
||||
#define FONT_SIZE 0x2000
|
||||
|
@ -1,18 +0,0 @@
|
||||
--- lib/font.c.orig Sun Apr 14 16:40:36 1996
|
||||
+++ lib/font.c Tue Nov 26 11:45:51 2002
|
||||
@@ -35,6 +35,7 @@
|
||||
struct shmid_ds shmseg;
|
||||
|
||||
shmkey = ftok(CONFIG_NAME, fnum);
|
||||
+ shmkey = 5000 + (fnum & 0x7F);
|
||||
if ((shmid = shmget(shmkey, sizeof(struct fontInfo), 0444)) < 0)
|
||||
return;
|
||||
shmctl(shmid, IPC_STAT, &shmseg);
|
||||
@@ -50,6 +51,7 @@
|
||||
int shmid;
|
||||
|
||||
shmkey = ftok(CONFIG_NAME, fnum);
|
||||
+ shmkey = 5000 + (fnum & 0x7F);
|
||||
if ((shmid = shmget(shmkey, sizeof(struct fontInfo), 0444)) < 0) return(0);
|
||||
return((u_char*)shmat(shmid, 0, SHM_RDONLY));
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
--- lib/mem.c.old Tue Jan 25 20:16:57 2000
|
||||
+++ lib/mem.c Tue Jan 25 20:28:18 2000
|
||||
@@ -44,6 +44,7 @@
|
||||
return(_rval);
|
||||
}
|
||||
|
||||
+#if 0
|
||||
void wzero(void *head, int n)
|
||||
{
|
||||
__asm__ ("cld\n\t"
|
||||
@@ -76,6 +77,7 @@
|
||||
"S" ((long)src)
|
||||
:"cx","di","si");
|
||||
}
|
||||
+#endif
|
||||
|
||||
void SafeFree(void **p)
|
||||
{
|
@ -1,42 +0,0 @@
|
||||
--- src/child.c.orig Mon Apr 15 09:47:23 1996
|
||||
+++ src/child.c Tue Nov 26 11:29:49 2002
|
||||
@@ -22,6 +22,7 @@
|
||||
#include <unistd.h>
|
||||
#ifdef __FreeBSD__
|
||||
#include <errno.h>
|
||||
+#include <sys/ioctl.h>
|
||||
#endif
|
||||
|
||||
#include <getcap.h>
|
||||
@@ -77,6 +78,9 @@
|
||||
{
|
||||
char *shell, *tail, *tcap;
|
||||
char buff[80];
|
||||
+#if defined(__FreeBSD__)
|
||||
+ struct winsize win;
|
||||
+#endif
|
||||
|
||||
setgid(getgid());
|
||||
setuid(getuid());
|
||||
@@ -87,7 +91,11 @@
|
||||
sprintf(buff, "TERMCAP=:co#%d:li#%d:tc=console:",
|
||||
dInfo.txmax + 1, dInfo.tymax + 1);
|
||||
#elif defined(__FreeBSD__)
|
||||
- sprintf(buff,"TERM=vt100");
|
||||
+ win.ws_row = dInfo.tymax + 1;
|
||||
+ win.ws_col = dInfo.txmax + 1;
|
||||
+ win.ws_xpixel = win.ws_ypixel = 0;
|
||||
+ ioctl(STDIN_FILENO, TIOCSWINSZ, &win);
|
||||
+ sprintf(buff,"TERM=vt100");
|
||||
#endif
|
||||
tcap = strdup(buff);
|
||||
putenv(tcap);
|
||||
@@ -106,7 +114,7 @@
|
||||
#if defined(linux)
|
||||
*(ttyname(fileno(errfp))+8));
|
||||
#elif defined(__FreeBSD__)
|
||||
- *(ttyname(fileno(errfp))+9));
|
||||
+ ttyname(fileno(errfp)) ? *(ttyname(fileno(errfp))+9) : '?');
|
||||
#endif
|
||||
fflush(stdout);
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- src/main.c.old Tue Jan 25 20:16:57 2000
|
||||
+++ src/main.c Tue Jan 25 20:32:52 2000
|
||||
@@ -34,7 +34,7 @@
|
||||
#include <version.h>
|
||||
#include <term.h>
|
||||
|
||||
-void main(int argc, const char *argv[])
|
||||
+int main(int argc, const char *argv[])
|
||||
{
|
||||
char *p;
|
||||
|
@ -1,12 +0,0 @@
|
||||
--- src/mouse.c.orig Sun Apr 14 16:40:40 1996
|
||||
+++ src/mouse.c Tue Nov 26 11:41:05 2002
|
||||
@@ -167,7 +167,8 @@
|
||||
|
||||
mouseType = MOUSE_NONE;
|
||||
mInfo.has_mouse = FALSE;
|
||||
- sscanf(config, "%s", name);
|
||||
+ strncpy(name, config, MAX_COLS - 1);
|
||||
+ name[MAX_COLS - 1] = '\0';
|
||||
for (p = mice; p->name != NULL; p++) {
|
||||
if (strcasecmp(name, p->name) == 0) {
|
||||
mouseType = p->type;
|
@ -1,11 +0,0 @@
|
||||
--- src/term.c.orig Mon Apr 15 09:46:48 1996
|
||||
+++ src/term.c Tue Nov 26 11:45:26 2002
|
||||
@@ -205,7 +205,7 @@
|
||||
PollCursor(TRUE);
|
||||
}
|
||||
if (FD_ISSET(sockFd, &readFds)) SocketInterface(sockFd);
|
||||
- if (mInfo.has_mouse) {
|
||||
+ if (mInfo.has_mouse && mouseFd > 0) {
|
||||
if (FD_ISSET(mouseFd, &readFds) && con.active) {
|
||||
i = read(mouseFd, buff, BUFSIZ);
|
||||
if (i > 0) MouseGetPacket(buff, i);
|
@ -1,175 +0,0 @@
|
||||
--- src/vc.c.orig Mon Apr 15 09:46:27 1996
|
||||
+++ src/vc.c Tue Nov 26 12:02:07 2002
|
||||
@@ -1,8 +1,10 @@
|
||||
/*
|
||||
KON - Kanji ON Linux Console -
|
||||
Copyright (C) 1992, 1993
|
||||
- MAEDA Atusi (mad@math.keio.ac.jp)
|
||||
- Takashi MANABE (manabe@tut.ac.jp)
|
||||
+ MAEDA Atusi (mad
|
||||
+math.keio.ac.jp)
|
||||
+ Takashi MANABE (manabe
|
||||
+tut.ac.jp)
|
||||
|
||||
KON is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
@@ -19,7 +21,8 @@
|
||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/*
|
||||
- modified for Big5Con by Hung-Chi Chu <hcchu@r350.ee.ntu.edu.tw>
|
||||
+ modified for Big5Con by Hung-Chi Chu <hcchu
|
||||
+r350.ee.ntu.edu.tw>
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
@@ -35,7 +38,16 @@
|
||||
#include <termio.h>
|
||||
#elif defined(__FreeBSD__)
|
||||
#include <termios.h>
|
||||
-#include <machine/console.h>
|
||||
+#include <osreldate.h>
|
||||
+#if __FreeBSD_version >= 410000
|
||||
+#include <sys/consio.h>
|
||||
+#include <sys/kbio.h>
|
||||
+#else
|
||||
+#include <sys/consio.h>
|
||||
+#include <sys/kbio.h>
|
||||
+
|
||||
+#endif
|
||||
+
|
||||
#endif
|
||||
#include <sys/ioctl.h>
|
||||
#ifdef linux
|
||||
@@ -92,28 +104,26 @@
|
||||
inline void blatch(void *head, int n)
|
||||
{
|
||||
|
||||
- __asm__("\t clc\n"
|
||||
+ __asm__ volatile("\t clc\n"
|
||||
"1:\n"
|
||||
"\t andb %%bl, (%%eax)\n"
|
||||
"\t incl %%eax\n"
|
||||
"\t loop 1b\n"
|
||||
- :
|
||||
- : "eax" ((long)head), "bl" (0x7F), "c" (n)
|
||||
- : "bl", "cx" );
|
||||
+ : "=bl" (head), "=c" (n)
|
||||
+ : "eax" ((long)head), "0" (0x7F), "1" (n));
|
||||
}
|
||||
|
||||
static
|
||||
inline void llatch(void *head, int n)
|
||||
{
|
||||
|
||||
- __asm__("\t clc\n"
|
||||
+ __asm__ volatile ("\t clc\n"
|
||||
"1:\n"
|
||||
"\t andl %%ebx, (%%eax)\n"
|
||||
"\t addl $4, %%eax\n"
|
||||
"\t loop 1b\n"
|
||||
- :
|
||||
- : "eax" ((long)head), "ebx" (0x7F7F7F7F), "c" (n>>2)
|
||||
- : "ebx", "cx" );
|
||||
+ : "=ebx" (head), "=c" (n)
|
||||
+ : "eax" ((long)head), "0" (0x7F7F7F7F), "1" (n>>2));
|
||||
}
|
||||
|
||||
static inline u_int TextAddress(u_int x, u_int y)
|
||||
@@ -254,13 +264,23 @@
|
||||
struct vt_mode vtm;
|
||||
|
||||
ioctl(0,KDSKBMODE,K_XLATE);
|
||||
+#if defined(__FreeBSD__)
|
||||
+ signal(SIGUSR1, SIG_IGN);
|
||||
+ signal(SIGUSR2, SIG_IGN);
|
||||
+#else /* linux */
|
||||
signal(SIGUSR1, SIG_DFL);
|
||||
signal(SIGUSR2, SIG_DFL);
|
||||
+#endif
|
||||
vtm.mode = VT_AUTO;
|
||||
vtm.waitv = 0;
|
||||
+#if defined(__FreeBSD__)
|
||||
+ vtm.relsig = SIGUSR1;
|
||||
+ vtm.acqsig = SIGUSR2;
|
||||
+ vtm.frsig = SIGUSR1;
|
||||
+#else /* linux */
|
||||
vtm.relsig = 0;
|
||||
vtm.acqsig = 0;
|
||||
- vtm.frsig = 0;
|
||||
+#endif
|
||||
ioctl(0, VT_SETMODE, &vtm);
|
||||
#if defined(__FreeBSD__)
|
||||
ioctl(0, VT_RELDISP, 1);
|
||||
@@ -287,13 +307,15 @@
|
||||
vtm.waitv = 0;
|
||||
vtm.relsig = SIGUSR1;
|
||||
vtm.acqsig = SIGUSR2;
|
||||
- vtm.frsig = SIGUSR1; /* not implemented, just a hack */
|
||||
+#if defined(__FreeBSD__)
|
||||
+ vtm.frsig = SIGUSR1;
|
||||
+#endif
|
||||
ioctl(0, VT_SETMODE, &vtm);
|
||||
vInfo.graph_mode();
|
||||
if (useHardScroll)
|
||||
vInfo.set_start_address();
|
||||
|
||||
- win.ws_row = dInfo.tymax; /* Note: con.ymax may be changed by application */
|
||||
+ win.ws_row = dInfo.tymax + 1; /* Note: con.ymax may be changed by application */
|
||||
win.ws_col = dInfo.txmax + 1;
|
||||
win.ws_xpixel = win.ws_ypixel = 0;
|
||||
ioctl(masterPty, TIOCSWINSZ, &win);
|
||||
@@ -821,44 +843,30 @@
|
||||
|
||||
static int ConfigBeep(const char *confstr)
|
||||
{
|
||||
- beepCount = atoi(confstr) * 10000;
|
||||
#if defined(linux)
|
||||
+ beepCount = atoi(confstr) * 10000;
|
||||
ioperm(COUNTER_ADDR, 1, TRUE);
|
||||
#endif
|
||||
+#if defined(__FreeBSD__)
|
||||
+ beepCount = atoi(confstr) * 10;
|
||||
+#endif
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
-/*
|
||||
- * Sound() added by woju.bbs@freebsd.ee.ntu.edu.tw
|
||||
- */
|
||||
-static void Sound(int freq, int ms)
|
||||
-{
|
||||
- PortOutb(182, 0x43);
|
||||
- PortOutb((100000 / freq) & 0xff, 0x42);
|
||||
- PortOutb((100000 / freq) >> 8, 0x42);
|
||||
- PortOutb(PortInb(0x61) | 3, 0x61);
|
||||
- usleep(ms * 1000);
|
||||
- PortOutb(PortInb(0x61) &0xfc, 0x61);
|
||||
-}
|
||||
-
|
||||
-static void Bell()
|
||||
-{
|
||||
- int i;
|
||||
-
|
||||
- for (i = 1; i <= 5; i++)
|
||||
- Sound(i * 100, 10);
|
||||
-}
|
||||
+#define BELL_PITCH 800
|
||||
|
||||
void Beep(void)
|
||||
{
|
||||
- if (!con.active) return;
|
||||
#ifdef linux
|
||||
+ if (!con.active) return;
|
||||
PortOutb(PortInb(COUNTER_ADDR)|3, COUNTER_ADDR);
|
||||
usleep(beepCount);
|
||||
PortOutb(PortInb(COUNTER_ADDR)&0xFC, COUNTER_ADDR);
|
||||
#endif
|
||||
#ifdef __FreeBSD__
|
||||
- Bell();
|
||||
+ if(beepCount <= 0) return;
|
||||
+ ioctl(fileno(stdout), KDMKTONE, (BELL_PITCH & 0xffff) |
|
||||
+ ((beepCount & 0xffff) << 16));
|
||||
#endif
|
||||
}
|
||||
|
@ -1,76 +0,0 @@
|
||||
--- src/vga.c.orig Sun Apr 14 16:40:40 1996
|
||||
+++ src/vga.c Tue Nov 26 11:38:34 2002
|
||||
@@ -1,6 +1,7 @@
|
||||
/*
|
||||
KON - Kanji ON Linux Console -
|
||||
- Copyright (C) 1992, 1993, 1994 Takashi MANABE (manabe@tut.ac.jp)
|
||||
+ Copyright (C) 1992, 1993, 1994 Takashi MANABE (manabe
|
||||
+tut.ac.jp)
|
||||
|
||||
KON is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by
|
||||
@@ -20,7 +21,8 @@
|
||||
/*
|
||||
This code is based on vgalib.
|
||||
|
||||
- Thanks to frandsen@diku.dk (Tommy Frandsen).
|
||||
+ Thanks to frandsen
|
||||
+diku.dk (Tommy Frandsen).
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
@@ -35,7 +37,14 @@
|
||||
#elif defined(__FreeBSD__)
|
||||
#include <vm/vm_param.h>
|
||||
#include <sys/ioctl.h>
|
||||
+#include <osreldate.h>
|
||||
+#if __FreeBSD_version > 410000
|
||||
+#include <sys/consio.h>
|
||||
+#include <sys/kbio.h>
|
||||
+#else
|
||||
#include <machine/console.h>
|
||||
+#endif
|
||||
+
|
||||
vm_size_t page_size;
|
||||
#endif
|
||||
#undef free
|
||||
@@ -205,7 +214,8 @@
|
||||
regText.seq[i] = PortInb(VGASEQ_DATA);
|
||||
}
|
||||
regText.mis = PortInb(VGAMISC_IN);
|
||||
-
|
||||
+
|
||||
+ PortOutb(PortInb(VGAMISC_IN)|0x01, VGAMISC_OUT);
|
||||
VgaSetRegisters(®Graph);
|
||||
|
||||
/* save font data in plane 2 */
|
||||
@@ -369,7 +379,7 @@
|
||||
/* if (!code) return;*/
|
||||
VgaSetColor(fc);
|
||||
if (bc & 0x8) *(vcls - dInfo.glineByte) = 0;
|
||||
- for (x = 0;x < sbFReg->high;x ++, code ++, fm >>= 1) {
|
||||
+ if (code) for (x = 0;x < sbFReg->high;x ++, code ++, fm >>= 1) {
|
||||
if (*code) {
|
||||
VgaOutByte(*code);
|
||||
*gram = *gram;
|
||||
@@ -437,7 +447,7 @@
|
||||
|
||||
void VgaCursor(struct cursorInfo *ci)
|
||||
{
|
||||
- char *gram;
|
||||
+ volatile char *gram;
|
||||
u_char x;
|
||||
int bottom = cursorBtm + 1 <= dInfo.glineChar ?
|
||||
cursorBtm + 1 : dInfo.glineChar;
|
||||
@@ -607,7 +617,11 @@
|
||||
Perror("ioctl CONSOLE_IO_ENABLE");
|
||||
return FAILURE;
|
||||
}
|
||||
+#if (__FreeBSD__ <= 3)
|
||||
if ((devMem = open("/dev/vga", O_RDWR|O_NDELAY) ) < 0) {
|
||||
+#else
|
||||
+ if ((devMem = open("/dev/mem", O_RDWR|O_NDELAY) ) < 0) {
|
||||
+#endif
|
||||
Perror("/dev/mem");
|
||||
return FAILURE;
|
||||
}
|
@ -1,33 +1,29 @@
|
||||
bin/b5c
|
||||
bin/b5cfld
|
||||
bin/et
|
||||
etc/big5con.cfg
|
||||
etc/big5con.cfg.default
|
||||
lib/fonts/kc16.smf
|
||||
lib/fonts/kc8x16.smf
|
||||
lib/xcin/Boshiamy.cin
|
||||
lib/xcin/Boshiamy.tab
|
||||
lib/xcin/Boshiamy.tab.rev
|
||||
lib/xcin/ar30.tab
|
||||
lib/xcin/ar30.tab.quick
|
||||
lib/xcin/ar30.tab.rev
|
||||
lib/xcin/array30.tab
|
||||
lib/xcin/changjei.tab
|
||||
lib/xcin/array30.tab.rev
|
||||
lib/xcin/cj.tab
|
||||
lib/xcin/cj.tab.rev
|
||||
lib/xcin/dayi3.tab
|
||||
lib/xcin/dayi3.tab.rev
|
||||
lib/xcin/et.kbm
|
||||
lib/xcin/et26.kbm
|
||||
lib/xcin/hsu.kbm
|
||||
lib/xcin/liu.tab
|
||||
lib/xcin/liu.tab.rev
|
||||
lib/xcin/pho.sel1st
|
||||
lib/xcin/pho.tab
|
||||
lib/xcin/pho1st
|
||||
lib/xcin/phonetic.tab
|
||||
lib/xcin/sample.phs.out
|
||||
lib/xcin/phone.tab
|
||||
lib/xcin/phone.tab.rev
|
||||
lib/xcin/sample.phs.b5c
|
||||
lib/xcin/simplex.tab
|
||||
lib/xcin/simplex.tab.rev
|
||||
lib/xcin/tsin
|
||||
lib/xcin/tsin.idx
|
||||
lib/xcin/tsin.src
|
||||
lib/xcin/xcin.help
|
||||
lib/xcin/xusrar30.tbl
|
||||
lib/xcin/zo.kbm
|
||||
lib/xcin/sample.phs.b5c
|
||||
@dirrm lib/fonts
|
||||
@dirrm lib/xcin
|
||||
@dirrm lib/fonts
|
||||
|
Loading…
Reference in New Issue
Block a user