1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-23 04:23:08 +00:00

Fix and updates from KATO Tsuguru.

Submitted by:		"KATO Tsuguru" <tkato@prontomail.ne.jp>
This commit is contained in:
Yukihiro Nakai 2000-01-22 11:46:45 +00:00
parent e9780e98f1
commit 044fe0d8a2
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=24924
61 changed files with 899 additions and 210 deletions

View File

@ -17,13 +17,16 @@ MAINTAINER= nakai@FreeBSD.org
WRKSRC= ${WRKDIR}/GB
USE_X_PREFIX= yes
CONFIGURE_ENV= X11BASE=${X11BASE}
do-configure:
@${SED} -e 's:%%PREFIX%%:${PREFIX}:g' ${FILESDIR}/vgb.sh \
> ${WRKSRC}/vgb.sh
do-install:
@${INSTALL_PROGRAM} ${WRKSRC}/gblist ${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC}/gblist ${PREFIX}/bin
@${MKDIR} ${PREFIX}/libexec/VGB ${PREFIX}/share/VGB
@${INSTALL_PROGRAM} ${WRKSRC}/vgb ${PREFIX}/libexec/VGB
@${INSTALL_DATA} ${WRKSRC}/CART.GB ${PREFIX}/share/VGB
@${INSTALL_SCRIPT} ${WRKSRC}/vgb.sh ${PREFIX}/bin/vgb
${INSTALL_PROGRAM} ${WRKSRC}/vgb ${PREFIX}/libexec/VGB
${INSTALL_DATA} ${WRKSRC}/CART.GB ${PREFIX}/share/VGB
${INSTALL_SCRIPT} ${WRKSRC}/vgb.sh ${PREFIX}/bin/vgb
.include <bsd.port.mk>

View File

@ -1,21 +1,23 @@
*** Makefile.org Thu Oct 31 03:00:44 1996
--- Makefile Thu Oct 31 03:01:14 1996
*** Makefile.orig Wed Jul 3 20:29:30 1996
--- Makefile Sat Jan 15 00:00:00 2000
***************
*** 27,34 ****
*** 26,34 ****
# If you are getting linker errors about not found X11 functions,
# change the -L/usr/X11R6/lib to the directory where X11
# libraries libX11.* and libXext.* are located on your system.
CC = gcc
! CC = gcc
! DEFINES = -DUNIX -DLSB_FIRST -DDEBUG -DMITSHM
! CFLAGS = -O2 -I/usr/X11/include -L/usr/X11/lib/ ${DEFINES}
OBJECTS = VGB.o GB.o Z80.o Debug.o Unix.o
# Make the standard distribution: VGB, DASM, and utilities.
--- 27,34 ----
--- 26,34 ----
# If you are getting linker errors about not found X11 functions,
# change the -L/usr/X11R6/lib to the directory where X11
# libraries libX11.* and libXext.* are located on your system.
CC = gcc
! DEFINES = -DUNIX -DLSB_FIRST -DDEBUG
! CFLAGS = -O2 -I/usr/X11R6/include -L/usr/X11R6/lib/ ${DEFINES}
! CC ?= gcc
! DEFINES = -DUNIX -DLSB_FIRST
! CFLAGS += -I${X11BASE}/include -L${X11BASE}/lib ${DEFINES}
OBJECTS = VGB.o GB.o Z80.o Debug.o Unix.o
# Make the standard distribution: VGB, DASM, and utilities.

View File

@ -1,3 +1,3 @@
#! /bin/sh
#!/bin/sh
/usr/X11R6/libexec/VGB/vgb $*
%%PREFIX%%/libexec/VGB/vgb $*

View File

@ -7,13 +7,5 @@ Virtual Game Boy is the Nintendo GameBoy(tm) emulator on X-Window.
You buy the cartridges. GameBoy software is copyrighted and still sold.
Therefore, its distribution is an act of piracy. Nothing prohibits you
from backing up a cartridge you own and playing it on the emulator though.
To back up a GameBoy cartridge, you can use either SmartCard copier (about
$100 for a standalone version), or a self-built copier designed by Pascal
Felber, description of which is available at:
http://www.freeflight.com/fms/GameBoy/
GameBoy-related archives with technical and other info are located at:
http://www.freeflight.com/fms/GameBoy/
ftp://ftp.komkon.org/pub/GameBoy/
WWW: http://www.komkon.org/fms/

View File

@ -1,14 +1,15 @@
# New ports collection makefile for: cosmo
# Version required: 2.0.4
# Date created: 28 December 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: cosmo
# Version required: 2.0.4
# Date created: 28 December 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= cosmo-2.0.4
CATEGORIES= games
MASTER_SITES= ftp://ftp.jinr.ru/pub/PD/cosmo/
MASTER_SITES= http://taraco.u-aizu.ac.jp/~eiju/cosmo/ \
ftp://ftp.jinr.ru/pub/PD/cosmo/
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} moon.tif.gz
MAINTAINER= nakai@FreeBSD.org
@ -24,7 +25,6 @@ NO_INSTALL_MANPAGES= yes
post-install:
${INSTALL_DATA} ${WRKSRC}/cosmorc ${PREFIX}/lib/X11/cosmo
${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/moon.tif.gz \
${PREFIX}/lib/X11/cosmo
${INSTALL_DATA} ${_DISTDIR}/moon.tif.gz ${PREFIX}/lib/X11/cosmo
.include <bsd.port.mk>

View File

@ -1,17 +1,30 @@
--- Imakefile.orig Sat May 11 16:06:00 1996
+++ Imakefile Fri May 2 12:38:28 1997
@@ -1,11 +1,12 @@
+++ Imakefile Sat Jan 15 04:54:08 2000
@@ -1,14 +1,14 @@
-BINDIR = /usr/local/games
+PREFIX?= /usr/X11R6
+BINDIR = ${PREFIX}/bin
+XCOMM BINDIR = /usr/local/games
PAD = # -DUSE_PAD
CHMOD = /bin/chmod
MKDIR = /bin/mkdir
CC = gcc
-CC = gcc
+XCOMM CC = gcc
REGULATE_TIMER = -DREG_TIMER
-DATADIR = $(BINDIR)/cosmodir
+DATADIR = ${PREFIX}/lib/X11/cosmo
+DATADIR = $(LIBDIR)/cosmo
DATAFILE = $(DATADIR)/best.dat
PROTO_DEFINES = -DRANK_FILE=\"$(DATAFILE)\" $(PAD) $(REGULATE_TIMER) $(SIGNAL)
CDEBUGFLAGS = -O2 # -g
-CDEBUGFLAGS = -O2 # -g
+XCOMM CDEBUGFLAGS = -O2 # -g
LOCAL_LIBRARIES = $(XLIB)
TAR = /bin/tar
@@ -27,7 +27,7 @@
install::
@if [ -d $(DATADIR) ]; then echo cosmodir exists, not created.;\
- else $(MKDIR) $(DATADIR); fi
+ else $(MKDIRHIER) $(DATADIR); fi
$(CHMOD) 711 $(DATADIR)
@if [ -f $(DATAFILE) ]; then echo ranking file exists, not created.;\
else echo > $(DATAFILE); fi

View File

@ -17,3 +17,5 @@ KEYBOARD:
n Select no
p Pause game
q Quit game
WWW: http://taraco.u-aizu.ac.jp/~eiju/cosmo/cosmo.html

View File

@ -1,12 +1,12 @@
# New ports collection makefile for: xcubes
# Version required: V5.4.4
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xcubes
# Version required: 5.5.2
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xcubes-5.4.4
DISTNAME= xcubes-5.5.2
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= games/xpuzzles
@ -18,9 +18,9 @@ USE_IMAKE= yes
MAN1= xcubes.1
MANCOMPRESSED= no
post-install:
@${INSTALL_PROGRAM} ${WRKSRC}/xcubes ${PREFIX}/bin
@${INSTALL_DATA} ${WRKSRC}/Cubes.ad ${PREFIX}/lib/X11/app-defaults/Cubes
@${INSTALL_MAN} ${WRKSRC}/xcubes.man ${PREFIX}/man/man1/xcubes.1
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/xcubes ${PREFIX}/bin
${INSTALL_DATA} ${WRKSRC}/Cubes.ad ${PREFIX}/lib/X11/app-defaults/Cubes
${INSTALL_MAN} ${WRKSRC}/xcubes.man ${PREFIX}/man/man1/xcubes.1
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (xcubes-5.4.4.tar.gz) = 32622cd341327282e1a5d9b71d87b002
MD5 (xcubes-5.5.2.tar.gz) = e421497744b4f1f6596169d9d45c4044

View File

@ -1,3 +1,5 @@
XCubes is a puzzle for X Window System.
Your goal is to exchange the numbered panels to be in order.
WWW: http://www.tux.org/~bagleyd/puzzles.html

View File

@ -1,27 +1,31 @@
# New ports collection makefile for: xdeblock
# Version required: v1.0
# Date created: 28 December 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xdeblock
# Version required: 1.0
# Date created: 28 December 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xdeblo_v1.0
DISTNAME= xdeblock
PKGNAME= xdeblock-1.0
CATEGORIES= games
MASTER_SITES= ftp://www.vector.co.jp/pack/unix/game/action/block/
DISTFILES= xdeblock.tgz
MASTER_SITES= ftp://ftp.vector.co.jp/pack/unix/game/action/block/
EXTRACT_SUFX= .tgz
MAINTAINER= nakai@FreeBSD.org
LIB_DEPENDS= Xpm.4:${PORTSDIR}/graphics/xpm
WRKSRC= ${WRKDIR}/xdeblo_v1.0
USE_IMAKE= yes
NO_INSTALL_MANPAGES= yes
post-patch:
@${PERL} -pi -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/main.c
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/xdeblo ${PREFIX}/bin
${MKDIR} ${PREFIX}/lib/X11/xdeblock/mapf
@${MKDIR} ${PREFIX}/lib/X11/xdeblock/mapf
${CHMOD} 777 ${PREFIX}/lib/X11/xdeblock/mapf
${INSTALL_DATA} ${WRKSRC}/mapf/*.txt ${PREFIX}/lib/X11/xdeblock/mapf

View File

@ -1,5 +1,5 @@
*** Imakefile.orig Sat Jan 25 23:26:41 1997
--- Imakefile Sat Jan 25 23:31:45 1997
*** Imakefile.orig Sat Nov 16 13:06:36 1996
--- Imakefile Thu Jan 15 00:00:00 2000
***************
*** 10,16 ****
XCOMM Set xdeblock working directory.
@ -13,7 +13,7 @@
XCOMM Set xdeblock working directory.
XCOMM =====================================================================
! XDEBLO_DIR = /usr/X11R6/lib/X11/xdeblock
! XDEBLO_DIR = $(LIBDIR)/xdeblock
XCOMM =====================================================================
XCOMM Set xpm.
@ -31,8 +31,8 @@
XCOMM abc% find /usr -name xpm.h -print
XCOMM =====================================================================
! XPM_INC = -I/usr/X11R6/include/X11
! XPMLIB_DIR = -L/usr/X11R6/lib
! XPM_INC = -I$(INCDIR)/X11
! XPMLIB_DIR = -L$(USRLIBDIR)
XCOMM =====================================================================

View File

@ -1,5 +1,5 @@
*** main.c.orig Sat Nov 16 05:37:16 1996
--- main.c Wed Mar 5 03:11:37 1997
*** main.c.orig Sat Nov 16 14:37:16 1996
--- main.c Thu Jan 15 00:00:00 2000
***************
*** 66,72 ****
/*** set s_map ***/
@ -13,7 +13,7 @@
/*** set s_map ***/
gameMainFlg.s_map = False;
nowDataRec.nowMap.gameSpeed = 90;
! strcpy(nowDataRec.nowMap.dirname, "/usr/X11R6/lib/X11/xdeblock/mapf");
! strcpy(nowDataRec.nowMap.dirname, "%%PREFIX%%/lib/X11/xdeblock/mapf");
for(i =1; i < argc; i++)
{

View File

@ -0,0 +1,36 @@
*** dialog.c.orig Sat Nov 16 14:37:15 1996
--- dialog.c Fri Jan 15 00:00:00 2000
***************
*** 8,14 ****
#include <sys/types.h>
#include <sys/stat.h>
! #include <sys/dir.h>
#include "gameheader.h"
--- 8,14 ----
#include <sys/types.h>
#include <sys/stat.h>
! #include <dirent.h>
#include "gameheader.h"
***************
*** 430,436 ****
char *fflag;
{
DIR *dp;
! struct direct *dir;
struct stat sbuf;
char newname[256];
register i = 0;
--- 430,436 ----
char *fflag;
{
DIR *dp;
! struct dirent *dir;
struct stat sbuf;
char newname[256];
register i = 0;

View File

@ -6,8 +6,10 @@ USAGE:
and push PLAY button in the window.
ENVIRONMENT:
You need 256 or more colors, 840x600 or more window, and enough memory.
You need 256 or more colors, 800x600 or more window, and enough memory.
AUTHOR:
e-mail: QYI03211@niftyserve.or.jp
e-mail: usapato@anet.ne.jp
Takuto Okuno
WWW: http://hp.vector.co.jp/authors/VA008796/xdeblo.html

View File

@ -1,12 +1,12 @@
# New ports collection makefile for: xdino
# Version required: 5.4.4
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xdino
# Version required: 5.5.2
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xdino-5.4.4
DISTNAME= xdino-5.5.2
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= games/xpuzzles
@ -18,9 +18,9 @@ USE_IMAKE= yes
MAN1= xdino.1
MANCOMPRESSED= no
post-install:
@${INSTALL_PROGRAM} ${WRKSRC}/xdino ${PREFIX}/bin
@${INSTALL_DATA} ${WRKSRC}/Dino.ad ${PREFIX}/lib/X11/app-defaults/Dino
@${INSTALL_MAN} ${WRKSRC}/xdino.man ${PREFIX}/man/man1/xdino.1
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/xdino ${PREFIX}/bin
${INSTALL_DATA} ${WRKSRC}/Dino.ad ${PREFIX}/lib/X11/app-defaults/Dino
${INSTALL_MAN} ${WRKSRC}/xdino.man ${PREFIX}/man/man1/xdino.1
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (xdino-5.4.4.tar.gz) = 2379e23b3cc2217b5579773e0b429c96
MD5 (xdino-5.5.2.tar.gz) = 17d620ba9acf5842b15e1d16b4507bbe

View File

@ -2,3 +2,5 @@ XDino, dino puzzle game for X-Window.
XDino is the puzzle game like as a rubik's cube, not 9 but 4 pieces
on a surface.
WWW: http://www.tux.org/~bagleyd/puzzles.html

View File

@ -9,7 +9,8 @@
DISTNAME= xeyes+2.01
PKGNAME= xeyes+-2.01
CATEGORIES= games
MASTER_SITES= ftp://ftp.eos.hokudai.ac.jp/pub/X11/contrib/misc/
MASTER_SITES= http://yindy1.aist-nara.ac.jp/~tetu-s/sofken/software/
EXTRACT_SUFX= .tar.Z
MAINTAINER= nakai@FreeBSD.org

View File

@ -1 +1 @@
MD5 (xeyes+2.01.tar.gz) = 72e8da2c65c8653388dd2fbd3ff5f113
MD5 (xeyes+2.01.tar.Z) = 1ca1807e521985bb49ad5e219849c88d

View File

@ -1,17 +1,19 @@
*** Imakefile.orig Thu May 5 07:58:34 1994
--- Imakefile Tue Oct 8 01:52:47 1996
*** Imakefile.orig Thu May 5 16:58:34 1994
--- Imakefile Thu Jan 15 00:00:00 2000
***************
*** 4,9 ****
# gcc
#CC = gcc
# CFLAGS = -O2 -Wall -DXPM -DUSLEEP
! CFLAGS =-DXPM -I/usr/local/X11R5/include/
CDEBUGFLAGS =
! CDEBUGFLAGS =
ComplexProgramTarget(xeyes+)
--- 4,9 ----
--- 4,11 ----
# gcc
#CC = gcc
# CFLAGS = -O2 -Wall -DXPM -DUSLEEP
! CFLAGS =-DXPM -I/usr/X11R6/include/ -L/usr/X11R6/lib
CDEBUGFLAGS =
! XCOMM CFLAGS =-DXPM -I/usr/local/X11R5/include/
! XCOMM CDEBUGFLAGS =
! DEFINES = -DXPM
! INCLUDES = -I$(INCDIR)/X11
ComplexProgramTarget(xeyes+)

View File

@ -9,16 +9,15 @@
DISTNAME= xeyes-g
PKGNAME= xgolgo-1.0
CATEGORIES= games
MASTER_SITES= ftp://ftp.netlab.is.tsukuba.ac.jp/pub/X/our_collections/misc/
MASTER_SITES= ftp://ftp.nemoto.ecei.tohoku.ac.jp/pub/X11/misc/
MAINTAINER= nakai@FreeBSD.org
WRKSRC= ${WRKDIR}/xeyes
USE_IMAKE= yes
NO_INSTALL_MANPAGES= yes
MAN1= xgolgo.1
post-install:
${INSTALL_MAN} ${WRKSRC}/xeyes.man ${PREFIX}/man/man1/xgolgo.1
post-patch:
@${CP} ${WRKSRC}/xeyes.man ${WRKSRC}/xgolgo.man
.include <bsd.port.mk>

View File

@ -1,28 +1,28 @@
# New ports collection makefile for: xpuyo
# Version required: 0.0
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xpuyo
# Version required: 0.1
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xpuyo
PKGNAME= xpuyo-0.0
DISTNAME= xpuyo-0.1
CATEGORIES= games
MASTER_SITES= ftp://ftp.meme.hokudai.ac.jp/pub/games/
MAINTAINER= nakai@FreeBSD.org
WRKSRC= ${WRKDIR}/xpuyo
USE_IMAKE= yes
XMKMF= xmkmf
NO_INSTALL_MANPAGES=yes
NO_INSTALL_MANPAGES= yes
RESTRICTED= "The author\'s ashamed of the quality of this version"
post-install:
@${CHMOD} 755 ${PREFIX}/bin/xpuyo
@${CHOWN} ${BINOWN}.${BINGRP} ${PREFIX}/bin/xpuyo
${MKDIR} ${PREFIX}/share/doc/xpuyo
@${MKDIR} ${PREFIX}/share/doc/xpuyo
${INSTALL_DATA} ${FILESDIR}/README ${PREFIX}/share/doc/xpuyo
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (xpuyo.tar.gz) = 241bb0145c9e45d6cde1881cfa409ee6
MD5 (xpuyo-0.1.tar.gz) = 241bb0145c9e45d6cde1881cfa409ee6

View File

@ -23,3 +23,5 @@ Start:
See more information read /usr/X11R6/share/doc/xpuyo/README.
Yukihiro Nakai<Nakai@Mlab.t.u-tokyo.ac.jp>
WWW: http://ca.meme.hokudai.ac.jp/people/tak/puyo/puyo.html

View File

@ -1,22 +1,20 @@
# New ports collection makefile for: xpuzzletama
# Version required: 1.5
# Date created: 18 January 1997
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xpuzzletama
# Version required: 1.5b
# Date created: 18 January 1997
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xpuzzletama
PKGNAME= xpuzzletama-1.5
DISTNAME= xpuzzletama-1.5b
CATEGORIES= games
MASTER_SITES= http://neo.yanagi.gifu-u.ac.jp/~c94056/
DISTFILES= PuzzleTama-ver1.5.tar.gz
MASTER_SITES= ftp://ftp.jaist.ac.jp/pub/os/linux/JG/JG-0.9.1/sources/
MAINTAINER= nakai@FreeBSD.org
LIB_DEPENDS= Xpm.4:${PORTSDIR}/graphics/xpm
CONFIGURE_ENV= X11BASE=${X11BASE}
WRKSRC= ${WRKDIR}/xpuzzletama
USE_IMAKE= yes
NO_INSTALL_MANPAGES= yes

View File

@ -1 +1 @@
MD5 (PuzzleTama-ver1.5.tar.gz) = 09f40c051941460ebdbeae1dc34a52fb
MD5 (xpuzzletama-1.5b.tar.gz) = fa3fbe00c2acdcb54240f288c2946b4a

View File

@ -1,8 +1,8 @@
*** Imakefile.orig Wed Dec 4 15:42:03 1996
--- Imakefile Sat Jan 18 17:46:01 1997
*** Imakefile.orig Thu Oct 15 19:24:34 1998
--- Imakefile Thu Jan 15 00:00:00 2000
***************
*** 7,13 ****
OBJS = xtama_init.o xtama_main.o xtama_move.o xtama_rensa.o xtama_score.o xtama_flush.o xtama_net.o
OBJS = $(SRCS:.c=.o)
#SCOREFILE = /opt/X11R6/lib/X11/tama_score
! SCOREFILE = ./.tama_score
@ -10,27 +10,10 @@
# もしネットワーク対戦をサポートしないなら下の -DNET を削ってください。
# スコアファイルにロック機構が必要ないなら -DFILELOCK を付けてください。
--- 7,13 ----
OBJS = xtama_init.o xtama_main.o xtama_move.o xtama_rensa.o xtama_score.o xtama_flush.o xtama_net.o
OBJS = $(SRCS:.c=.o)
#SCOREFILE = /opt/X11R6/lib/X11/tama_score
! SCOREFILE = /usr/X11R6/lib/X11/xpuzzletama/tama_score
! SCOREFILE = $(LIBDIR)/xpuzzletama/tama_score
# もしネットワーク対戦をサポートしないなら下の -DNET を削ってください。
# スコアファイルにロック機構が必要ないなら -DFILELOCK を付けてください。
***************
*** 23,29 ****
# ※必ずどれかを指定して下さい。
# 自分で作り直してもいいです。 (^^;
# ↓ ↓ ↓ ↓
! DEFINES = -DSFILE=\"${SCOREFILE}\" -DNET -DUSR_RAND
#DEFINES = -DSFILE=\"${SCOREFILE}\" -DNET -DFILELOCK -I/opt/X11R6/include -DUSR_RANDOM
--- 23,29 ----
# ※必ずどれかを指定して下さい。
# 自分で作り直してもいいです。 (^^;
# ↓ ↓ ↓ ↓
! DEFINES = -DSFILE=\"${SCOREFILE}\" -DNET -DUSR_RANDOM
#DEFINES = -DSFILE=\"${SCOREFILE}\" -DNET -DFILELOCK -I/opt/X11R6/include -DUSR_RANDOM

View File

@ -1,2 +1,3 @@
bin/xpuzzletama
lib/X11/xpuzzletama/tama_score
@dirrm lib/X11/xpuzzletama

View File

@ -1,12 +1,12 @@
# New ports collection makefile for: xrubik
# Version required: 5.4.4
# New ports collection makefile for: xrubik
# Version required: 5.5.2
# Date created: 20 October 1996
# Whom: Yukihiro Nakai <nakai@mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xrubik-5.4.4
DISTNAME= xrubik-5.5.2
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= games/xpuzzles
@ -18,7 +18,7 @@ USE_IMAKE= yes
MAN1= xrubik.1
MANCOMPRESSED= no
post-install:
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/xrubik ${PREFIX}/bin
${INSTALL_DATA} ${WRKSRC}/Rubik.ad ${PREFIX}/lib/X11/app-defaults/Rubik
${INSTALL_MAN} ${WRKSRC}/xrubik.man ${PREFIX}/man/man1/xrubik.1

View File

@ -1 +1 @@
MD5 (xrubik-5.4.4.tar.gz) = b6ad899aa0559517ded199cb65e109d9
MD5 (xrubik-5.5.2.tar.gz) = a8fc4e3688aa1a12ffa30375b704df13

View File

@ -2,3 +2,5 @@ Xrubik, X-based rubik's cube(tm)
Rubik's cube is a puzzle that you put same color pieces to
the same faces on a cube.
WWW: http://www.tux.org/~bagleyd/puzzles.html

View File

@ -1,7 +1,7 @@
# New ports collection makefile for: xsokoban
# Version required: 3.3b
# Date created: 16 November 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xsokoban
# Version required: 3.3c
# Date created: 16 November 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
@ -19,6 +19,9 @@ WRKSRC= ${WRKDIR}/xsokoban
ALL_TARGET= xsokoban
MAN1= xsokoban.1
post-patch:
@${PERL} -pi -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/config.h
post-install:
@${MKDIR} ${PREFIX}/lib/X11/xsokoban/scores \
${PREFIX}/lib/X11/xsokoban/bitmaps/defaults \

View File

@ -1,5 +1,5 @@
*** Imakefile.org Sun Nov 17 15:36:02 1996
--- Imakefile Sun Nov 17 15:36:36 1996
*** Imakefile.orig Wed Aug 28 02:34:41 1996
--- Imakefile Sat Jan 15 00:00:00 2000
***************
*** 1,7 ****
DEFINES= -DNDEBUG
@ -9,12 +9,11 @@
# -lXpm is only needed if you are using Xpm.
SRCS= display.c main.c resources.c play.c score.c screen.c \
--- 1,8 ----
--- 1,7 ----
DEFINES= -DNDEBUG
! EXTRA_INCLUDES= -I/usr/local/include -I/usr/X11R6/include/X11 \
! -I/usr/X11R6/include
! EXTRA_INCLUDES= -I$(INCDIR)/X11
! SYS_LIBRARIES= -L/usr/local/lib -L/usr/X11R6/lib -lXpm $(XLIB)
! SYS_LIBRARIES= -lXpm $(XLIB)
# -lXpm is only needed if you are using Xpm.
SRCS= display.c main.c resources.c play.c score.c screen.c \

View File

@ -13,7 +13,7 @@
variable in the installed version, but you know best...
*/
#ifndef ROOTDIR
! #define ROOTDIR "/usr/X11R6/lib/X11/xsokoban"
! #define ROOTDIR "%%PREFIX%%/lib/X11/xsokoban"
#endif
/*

View File

@ -0,0 +1,14 @@
*** externs.h.orig Sun Apr 16 07:46:14 1995
--- externs.h Sat Jan 15 00:00:00 2000
***************
*** 5,11 ****
--- 5,13 ----
#include <X11/Xresource.h>
#include <sys/stat.h>
#include <sys/types.h>
+ #ifndef __STDC__
#include <malloc.h>
+ #endif
#ifdef NEED_NETINET_IN
#include <netinet/in.h>

View File

@ -1,2 +1,4 @@
XSokoban is a puzzle of pushing objects. This is the X-Window version of
'Sokoban', developed in Japan.
WWW: http://xsokoban.lcs.mit.edu/xsokoban.html

View File

@ -135,6 +135,7 @@ lib/X11/xsokoban/screens/screen.88
lib/X11/xsokoban/screens/screen.89
lib/X11/xsokoban/screens/screen.9
lib/X11/xsokoban/screens/screen.90
@unexec rm -f %D/lib/X11/xsokoban/scores/scores 2>/dev/null || true
@dirrm lib/X11/xsokoban/bitmaps/defaults
@dirrm lib/X11/xsokoban/bitmaps
@dirrm lib/X11/xsokoban/saves

View File

@ -1,12 +1,12 @@
# New ports collection makefile for: xtriangles
# Version required: 5.4.4
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xtriangles
# Version required: 5.5.2
# Date created: 12 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xtriangles-5.4.4
DISTNAME= xtriangles-5.5.2
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= games/xpuzzles
@ -18,10 +18,10 @@ USE_IMAKE= yes
MAN1= xtriangles.1
MANCOMPRESSED= no
post-install:
@${INSTALL_PROGRAM} ${WRKSRC}/xtriangles ${PREFIX}/bin
@${INSTALL_DATA} ${WRKSRC}/Triangles.ad \
${PREFIX}/lib/X11/app-defaults/Triangles
@${INSTALL_MAN} ${WRKSRC}/xtriangles.man ${PREFIX}/man/man1/xtriangles.1
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/xtriangles ${PREFIX}/bin
${INSTALL_DATA} ${WRKSRC}/Triangles.ad \
${PREFIX}/lib/X11/app-defaults/Triangles
${INSTALL_MAN} ${WRKSRC}/xtriangles.man ${PREFIX}/man/man1/xtriangles.1
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (xtriangles-5.4.4.tar.gz) = 0b14d35754f0ec5857400ec7f356cf67
MD5 (xtriangles-5.5.2.tar.gz) = 4291ff88fdae67bea78da16fa0e9b916

View File

@ -1,3 +1,5 @@
XTriangles, triangle puzzle for X-Window
Your goal is to exchange the triangle panels to be in order.
WWW: http://www.tux.org/~bagleyd/puzzles.html

View File

@ -1,5 +1,5 @@
# New ports collection makefile for: gqview
# Version required: 0.6.1
# Version required: 0.7.0
# Date Created: 27 Oct 1998
# Whom: Vanilla Pooh Shu <vanilla@FreeBSD.org>
#
@ -11,7 +11,6 @@ PKGNAME= gqview-0.7.0
CATEGORIES= graphics
MASTER_SITES= http://gqview.netpedia.net/ \
http://www.geocities.com/SiliconValley/Haven/5235/
EXTRACT_SUFX= .tgz
MAINTAINER= nakai@FreeBSD.org
@ -24,12 +23,12 @@ USE_X_PREFIX= yes
WRKSRC= ${WRKDIR}/${PKGNAME}
ALL_TARGET= gqview
CONFIGURE_ENV= GTK_CONFIG="${GTK_CONFIG}"
MAKE_ENV= GTK_CONFIG="${GTK_CONFIG}"
pre-install:
post-install:
.if !defined(NOPORTDOCS)
@${MKDIR} ${PREFIX}/share/doc/gqview
${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/gqview/README
${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/gqview
.endif
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (gqview-0.7.0.src.tgz) = d8adab5af9f0272de3a20bafd21b4350
MD5 (gqview-0.7.0.src.tar.gz) = d8adab5af9f0272de3a20bafd21b4350

View File

@ -1,7 +1,7 @@
# New ports collection makefile for: xshodo
# Version required: 2.0
# Date created: 11 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xshodo
# Version required: 2.0
# Date created: 11 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
@ -15,6 +15,5 @@ MAINTAINER= nakai@FreeBSD.org
USE_IMAKE= yes
MAN1= xshodo.1
MANCOMPRESSED= yes
.include <bsd.port.mk>

View File

@ -0,0 +1,13 @@
--- Imakefile.orig Thu Feb 13 18:20:38 1997
+++ Imakefile Sat Jan 15 00:00:00 2000
@@ -1,7 +1,7 @@
-CC = gcc
-CDEBUGFLAGS=\
+XCOMM CC = gcc
+XCOMM CDEBUGFLAGS=\
# -g
-CCOPTIONS=\
+XCOMM CCOPTIONS=\
# -O2
DEPLIBS = XawClientDepLibs

View File

@ -4,3 +4,5 @@ You can write a Japanese or Chinese letter under the traditional method
with traditional pen simulator. Additionally, you can write some traditional
picture called 'Sumie'. Load and save features are implemented at the bitmap
format.
WWW: http://cclub.cc.tut.ac.jp/lib/xwin/xbakuzan.html

View File

@ -1,19 +1,19 @@
# New ports collection makefile for: xantfarm
# Version required: 1.16
# Date created: 13 February 1997
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xantfarm
# Version required: 1.16
# Date created: 13 February 1997
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xantfarm
DISTNAME= xantfarm_23oct91
PKGNAME= xantfarm-1.16
CATEGORIES= x11
MASTER_SITES= ftp://ftp.kuis.kyoto-u.ac.jp/Linux/JG/other-sources/
DISTFILES= xantfarm23oct91.tar.gz
MASTER_SITES= http://www.acme.com/software/xantfarm/
MAINTAINER= nakai@FreeBSD.org
WRKSRC= ${WRKDIR}/xantfarm
USE_IMAKE= yes
MAN1= xantfarm.1

View File

@ -1 +1 @@
MD5 (xantfarm23oct91.tar.gz) = 2820d9fa8090c269a51a544fb22200c0
MD5 (xantfarm_23oct91.tar.gz) = d3a7a4366baad292fcb6c05df59a0ee0

View File

@ -1 +1,3 @@
Xantfarm animates the X11 root window with a simulated ant hill.
WWW: http://www.acme.com/software/xantfarm/

View File

@ -1,21 +1,20 @@
# New ports collection makefile for: xmascot
# Version required: 2.5p2
# Date created: 20 November 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xmascot
# Version required: 2.6a
# Date created: 20 November 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
DISTNAME= xmascot2.5p2
PKGNAME= xmascot-2.5p2
DISTNAME= xmascot2.6a
PKGNAME= xmascot-2.6a
CATEGORIES= x11
MASTER_SITES= ftp://cclub.tutcc.tut.ac.jp/pub/xmascot/
MASTER_SITES= ftp://cclub.tutcc.tut.ac.jp/pub/xmascot/ \
http://cclub-flying.dsl.gr.jp/products/xmascot/
MAINTAINER= nakai@FreeBSD.org
USE_GMAKE= yes
USE_IMAKE= yes
MAN1= xmascot.1
MANCOMPRESSED= yes
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (xmascot2.5p2.tar.gz) = 4e953fbbc347086a12a894bfe8ca440b
MD5 (xmascot2.6a.tar.gz) = 0841f9448349db6fc89a2201385c2bdc

View File

@ -0,0 +1,10 @@
--- config.tmpl.orig Fri Oct 24 01:41:01 1997
+++ config.tmpl Sat Jan 15 00:00:00 2000
@@ -97,6 +97,7 @@
#ifdef USE_I18N
DEFINES_I18N = -DI18N
+LANG = ja_JP.EUC
LOCALEDIR = $(LIBDIR)/$(LANG)/app-defaults
#else
DEFINES_I18N =

View File

@ -19,5 +19,4 @@ PNM *.pnm PPM, PGM, or PBM
XMascot distinguishes images from their suffix and can load other image formats
when {suffix}topnm, *topgm, or *topbm commands are found in your system.
WWW: http://cclub.tutcc.tut.ac.jp:1080/xmascot/
ftp://cclub.tutcc.tut.ac.jp/pub/xmascot/
WWW: http://cclub-flying.dsl.gr.jp/products/xmascot/

View File

@ -1,24 +1,45 @@
bin/xmascot
lib/X11/app-defaults/XMascot
lib/X11/xmascot/pin.mag
lib/X11/xmascot/chain.mag
lib/X11/xmascot/mail_r.mag
lib/X11/xmascot/kuma.mag
lib/X11/xmascot/inu.mag
lib/X11/xmascot/neko.mag
lib/X11/xmascot/neko2.mag
lib/X11/xmascot/teru.mag
lib/X11/xmascot/pen.mag
lib/X11/xmascot/saru.mag
lib/X11/xmascot/rabi.mag
lib/X11/xmascot/fish.mag
lib/X11/xmascot/monohosi.mag
lib/X11/xmascot/logo.mag
lib/X11/xmascot/pipipipi.au
lib/X11/ja_JP.EUC/app-defaults/XMascot
lib/X11/xmascot/aquarius.gif
lib/X11/xmascot/aries.gif
lib/X11/xmascot/canser.gif
lib/X11/xmascot/capric.gif
lib/X11/xmascot/chain.gif
lib/X11/xmascot/fish.gif
lib/X11/xmascot/gemini.gif
lib/X11/xmascot/icon.xbm
lib/X11/xmascot/inu.gif
lib/X11/xmascot/kuma.gif
lib/X11/xmascot/leo.gif
lib/X11/xmascot/libra.gif
lib/X11/xmascot/logo.gif
lib/X11/xmascot/mail_r.gif
lib/X11/xmascot/mi.au
lib/X11/xmascot/mi.raw
lib/X11/xmascot/mi2.au
lib/X11/xmascot/mi2.raw
lib/X11/xmascot/mitime.au
lib/X11/xmascot/mitime.raw
lib/X11/xmascot/monohosi.gif
lib/X11/xmascot/neko.gif
lib/X11/xmascot/neko2.gif
lib/X11/xmascot/osu.xbm
lib/X11/xmascot/osu.xbmmsk
lib/X11/xmascot/pen.gif
lib/X11/xmascot/pin.gif
lib/X11/xmascot/pipipipi.au
lib/X11/xmascot/pisces.gif
lib/X11/xmascot/rabi.gif
lib/X11/xmascot/sagitt.gif
lib/X11/xmascot/saru.gif
lib/X11/xmascot/scorpio.gif
lib/X11/xmascot/select.xbm
lib/X11/xmascot/taurus.gif
lib/X11/xmascot/teru.gif
lib/X11/xmascot/tumamu.xbm
lib/X11/xmascot/tumamu.xbmmsk
lib/X11/xmascot/virgo.gif
lib/X11/xmascot/yubi.xbm
lib/X11/xmascot/yubi.xbmmsk
@dirrm lib/X11/xmascot

View File

@ -1,7 +1,7 @@
# New ports collection makefile for: xmold
# Version required: 1.0
# Date created: 11 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
# New ports collection makefile for: xmold
# Version required: 1.0
# Date created: 11 October 1996
# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
#
# $FreeBSD$
#
@ -14,11 +14,9 @@ MASTER_SITES= ftp://cclub.tutcc.tut.ac.jp/pub/xwin/
MAINTAINER= nakai@FreeBSD.org
USE_IMAKE= yes
NO_INSTALL_MANPAGE= yes
do-install:
@${MKDIR} ${PREFIX}/bin
@install -c -s ${WRKSRC}/xmold ${PREFIX}/bin
@${CHMOD} 755 ${PREFIX}/bin/xmold
@${CHOWN} bin.bin ${PREFIX}/bin/xmold
${INSTALL_PROGRAM} ${WRKSRC}/xmold ${PREFIX}/bin
.include <bsd.port.mk>

13
x11/xmold/files/patch-aa Normal file
View File

@ -0,0 +1,13 @@
--- Imakefile.orig Sat Nov 25 04:07:57 1995
+++ Imakefile Sat Jan 15 00:00:00 2000
@@ -1,7 +1,7 @@
-CC = gcc
-CDEBUGFLAGS=\
+XCOMM CC = gcc
+XCOMM CDEBUGFLAGS=\
# -g
-CCOPTIONS=\
+XCOMM CCOPTIONS=\
# -O2
#ifndef LocalLib

View File

@ -8,3 +8,5 @@ Recover:
xrefresh
Yukihiro Nakai<Nakai@Mlab.t.u-tokyo.ac.jp>
WWW: http://cclub.cc.tut.ac.jp/lib/xwin/xmold.html

12
x11/xzoom/files/patch-aa Normal file
View File

@ -0,0 +1,12 @@
--- Imakefile.orig Wed Apr 17 18:04:51 1996
+++ Imakefile Sat Jan 15 00:00:00 2000
@@ -19,7 +19,7 @@
NAME = xzoom
-BINDIR = /usr/local/bin
-MANPATH = /usr/local/man
+XCOMM BINDIR = /usr/local/bin
+XCOMM MANPATH = /usr/local/man
SimpleProgramTarget($(NAME))

105
x11/xzoom/files/patch-ab Normal file
View File

@ -0,0 +1,105 @@
--- scale.h.orig Sat Jan 15 14:23:58 2000
+++ scale.h Sat Jan 15 00:00:00 2000
@@ -0,0 +1,102 @@
+/* scale image from SRC to DST - parameterized by type T */
+
+/* get pixel address of point (x,y) in image t */
+#define getP(t,x,y) \
+ (T *) (&ximage[t]->data[(ximage[t]->xoffset+(x))*sizeof(T) + \
+ (y)*ximage[t]->bytes_per_line])
+
+{
+ int i, j, k;
+
+ /* copy scaled lines from SRC to DST */
+ j = flipxy ? width[SRC] - 1 : height[SRC] - 1;
+ do {
+ T *p1;
+ T *p2;
+ int p2step;
+ T *p1_save;
+
+ /* p1 point to begining of scanline j*magy in DST */
+ p1 = getP(DST,0,j*magy);
+ p1_save = p1;
+ /* p2 point to begining of scanline j in SRC */
+ /* if flipy then line height[SRC]-1-j */
+ p2 = getP(SRC,0,flipy ? (height[SRC]-1-j) : j);
+
+ if (flipxy)
+ {
+ p2 = getP(SRC,flipy ? j : (width[SRC]-1-j),0);
+ p2step = ximage[SRC]->bytes_per_line / sizeof(T);
+
+ if (flipx)
+ {
+ p2 += p2step * (height[SRC]-1);
+ p2step = -p2step;
+ }
+
+ i = height[SRC];
+ do {
+ T c = *p2; p2 += p2step;
+ k = magx; do *p1++ = c; while (--k > 0);
+ } while (--i > 0);
+ }
+ else if (flipx)
+ {
+ p2 += width[SRC];
+ i = width[SRC];
+ do {
+ T c = *--p2;
+ k = magx; do *p1++ = c; while (--k > 0);
+ } while (--i > 0);
+ }
+ else
+ {
+ i = width[SRC];
+ do {
+ T c = *p2++;
+ k = magx; do *p1++ = c; while (--k > 0);
+ } while (--i > 0);
+ }
+
+ /* draw vertical grid */
+ if (gridy && magx >= 2)
+ {
+ p1 = p1_save - 1;
+ i = magx;
+ k = flipxy ? height[SRC] : width[SRC];
+ do {
+ p1 += i;
+ *p1 ^= ~((T)0);
+ } while (--k > 0);
+ }
+
+ /* duplicate that line as needed */
+ if (magy > 1)
+ {
+ /* p1 point to begining of scanline j*magy in DST */
+ p1 = p1_save;
+ /* p2 points to begining of next line */
+ p2 = p1;
+ p2step = ximage[DST]->bytes_per_line / sizeof(T);
+
+ i = width[DST] * sizeof(T);
+ k = magy - 1;
+ do {
+ p2 += p2step;
+ memcpy(p2, p1, i);
+ } while (--k > 0);
+
+ /* draw horizontal grid */
+ if (gridx && magy >= 2)
+ {
+ k = width[DST];
+ do {
+ *p2++ ^= ~((T)0);
+ } while (--k > 0);
+ }
+ }
+ } while (--j >= 0);
+}
+
+#undef getP
+

427
x11/xzoom/files/patch-ac Normal file
View File

@ -0,0 +1,427 @@
--- xzoom.c.orig Wed May 29 18:40:51 1996
+++ xzoom.c Sat Jan 15 00:00:00 2000
@@ -12,13 +12,20 @@
exact location where the source code can be obtained.
Changelist:
-Author Description
------- -----------
-Itai Nahshon Version 0.1, Nov. 21 1995
-Itai Nahshon Version 0.2, Apr. 17 1996
- include <sys/types.h>
- Use memmove() instead of memcopy()
- Optional macro to replace call to usleep().
+Author Description
+------ -----------
+Itai Nahshon Version 0.1, Nov. 21 1995
+Itai Nahshon Version 0.2, Apr. 17 1996
+ include <sys/types.h>
+ Use memmove() instead of memcopy()
+ Optional macro to replace call to usleep().
+Markus F.X.J. Oberhumer Version 0.4, Feb. 18 1998
+ split into 2 files (scale.h)
+ added support for 15, 16, 24 and 32 bpp displays
+ added a grid (press key 'g')
+ optimized scaling routines
+ use memcpy() instead of memmove() ;-)
+ some other minor changes/fixes
*/
#include <stdio.h>
@@ -87,8 +94,12 @@
int xzoom_flag = False; /* next mag change only to magx */
int yzoom_flag = False; /* next mag change only to magy */
+int gridx = False;
+int gridy = False;
+
int width[2] = { 0, WIDTH };
int height[2] = { 0, HEIGHT };
+unsigned depth = 0;
#ifdef XSHM
XShmSegmentInfo shminfo[2]; /* Segment info. */
@@ -106,6 +117,7 @@
void
timeout_func(int signum) {
set_title = True;
+ signum = signum; /* UNUSED */
}
#ifdef FRAME
@@ -116,9 +128,6 @@
void
allocate_images(void) {
int i;
-#ifndef XSHM
- char *data;
-#endif
for(i = 0; i < 2; i++) {
@@ -137,7 +146,7 @@
shminfo[i].shmid = shmget(IPC_PRIVATE,
(unsigned int)(ximage[i]->bytes_per_line * ximage[i]->height),
IPC_CREAT | 0777);
-
+
if(shminfo[i].shmid < 0) {
perror("shmget");
exit(-1);
@@ -163,20 +172,21 @@
shmctl(shminfo[i].shmid, IPC_RMID, 0);
#else
- data = malloc(width[i] * height[i]);
+ char *data;
+ data = malloc(BitmapUnit(dpy) / 8 * width[i] * height[i]);
ximage[i] = XCreateImage(dpy,
DefaultVisualOfScreen(scr),
DefaultDepthOfScreen(scr),
ZPixmap, 0, data,
- width[i], height[i], 8, width[i]);
+ width[i], height[i], 32, 0);
if(ximage[i] == NULL) {
perror("XCreateImage");
exit(-1);
}
-#endif XSHM
+#endif /* XSHM */
}
created_images = True;
}
@@ -185,6 +195,9 @@
destroy_images(void) {
int i;
+ if (!created_images)
+ return;
+
for(i = 0; i < 2; i++) {
#ifdef XSHM
XShmDetach(dpy, &shminfo[i]); /* ask X11 to detach shared segment */
@@ -195,6 +208,8 @@
ximage[i]->data = NULL; /* remove refrence to that address */
XDestroyImage(ximage[i]); /* and destroy image */
}
+
+ created_images = False;
}
void
@@ -230,8 +245,7 @@
void
resize(int new_width, int new_height) {
- if(created_images)
- destroy_images(); /* we can get rid of these */
+ destroy_images(); /* we can get rid of these */
/* find new dimensions for source */
@@ -244,9 +258,13 @@
height[SRC] = (new_height+magy-1) / magy;
}
+ if(width[SRC] < 1)
+ width[SRC] = 1;
if(width[SRC] > WidthOfScreen(scr))
width[SRC] = WidthOfScreen(scr);
+ if(height[SRC] < 1)
+ height[SRC] = 1;
if(height[SRC] > HeightOfScreen(scr))
height[SRC] = HeightOfScreen(scr);
@@ -270,12 +288,34 @@
height[DST] = new_height;
}
+
+void scale8(void)
+{
+#define T unsigned char
+#include "scale.h"
+#undef T
+}
+
+
+void scale16(void)
+{
+#define T unsigned short
+#include "scale.h"
+#undef T
+}
+
+
+void scale32(void)
+{
+#define T unsigned int
+#include "scale.h"
+#undef T
+}
+
+
int
main(int argc, char **argv) {
XSetWindowAttributes xswa;
- int i, j, k;
- char c;
- char *p1, *p2;
XEvent event;
int buttonpressed = False;
int unmapped = True;
@@ -286,8 +326,9 @@
int source_geom_mask = NoValue,
dest_geom_mask = NoValue,
copy_from_src_mask;
- int xpos = 0, ypos = 0;
+ int xpos = 0, ypos = 0;
+ atexit(destroy_images);
progname = strrchr(argv[0], '/');
if(progname)
++progname;
@@ -312,7 +353,7 @@
if(magx <= 0)
Usage();
-
+
magy = argc > 1 ? atoi(argv[1]) : -1;
@@ -340,7 +381,7 @@
flipxy = True;
continue;
}
-
+
if(!strcmp(argv[0], "-source")) {
++argv; --argc;
@@ -438,23 +479,24 @@
scr = DefaultScreenOfDisplay(dpy);
- if(DefaultDepthOfScreen(scr) != 8) {
- fprintf(stderr, "%s: can work only with 8 bits/pixel\n", progname);
+ depth = DefaultDepthOfScreen(scr);
+ if (depth < 8) {
+ fprintf(stderr, "%s: need at least 8 bits/pixel\n", progname);
exit(1);
}
if(source_geom_mask & XNegative)
xgrab += WidthOfScreen(scr);
-
+
if(source_geom_mask & YNegative)
ygrab += HeightOfScreen(scr);
if(dest_geom_mask & XNegative)
xpos += WidthOfScreen(scr);
-
+
if(source_geom_mask & YNegative)
ypos += HeightOfScreen(scr);
-
+
/* printf("=%dx%d+%d+%d\n", width[DST], height[DST], xpos, ypos); */
xswa.event_mask = ButtonPressMask|ButtonReleaseMask|ButtonMotionMask;
@@ -463,17 +505,17 @@
xswa.background_pixel = BlackPixelOfScreen(scr);
win = XCreateWindow(dpy, RootWindowOfScreen(scr),
- xpos, ypos, width[DST], height[DST], 0,
+ xpos, ypos, width[DST], height[DST], 0,
DefaultDepthOfScreen(scr), InputOutput,
DefaultVisualOfScreen(scr),
CWEventMask | CWBackPixel, &xswa);
- XChangeProperty(dpy, win, XA_WM_ICON_NAME, XA_STRING, 8,
+ XChangeProperty(dpy, win, XA_WM_ICON_NAME, XA_STRING, 8,
PropModeReplace,
(unsigned char *)progname, strlen(progname));
/*
- XChangeProperty(dpy, win, XA_WM_NAME, XA_STRING, 8,
+ XChangeProperty(dpy, win, XA_WM_NAME, XA_STRING, 8,
PropModeReplace,
(unsigned char *)progname, strlen(progname));
*/
@@ -512,7 +554,7 @@
{
static char bitmap_data[] = { 0 };
static XColor col = { 0 };
- Pixmap curs = XCreatePixmapFromBitmapData(dpy,
+ Pixmap curs = XCreatePixmapFromBitmapData(dpy,
RootWindowOfScreen(scr), bitmap_data, 1, 1, 0, 0, 1);
when_button = XCreatePixmapCursor(dpy, curs, curs, &col, &col, 0, 0);
@@ -567,6 +609,7 @@
case '+':
case '=':
+ case XK_KP_Add:
if(!yzoom_flag) ++magx;
if(!xzoom_flag) ++magy;
xzoom_flag = yzoom_flag = False;
@@ -575,6 +618,7 @@
break;
case '-':
+ case XK_KP_Subtract:
if(!yzoom_flag) --magx;
if(!xzoom_flag) --magy;
xzoom_flag = yzoom_flag = False;
@@ -585,6 +629,7 @@
break;
case XK_Left:
+ case XK_KP_Left:
if(flipxy)
if(flipx)
ygrab += scroll;
@@ -598,6 +643,7 @@
break;
case XK_Right:
+ case XK_KP_Right:
if(flipxy)
if(flipx)
ygrab -= scroll;
@@ -611,6 +657,7 @@
break;
case XK_Up:
+ case XK_KP_Up:
if(flipxy)
if(flipy)
xgrab -= scroll;
@@ -624,6 +671,7 @@
break;
case XK_Down:
+ case XK_KP_Down:
if(flipxy)
if(flipy)
xgrab += scroll;
@@ -666,12 +714,17 @@
xzoom_flag = False;
break;
+ case 'g':
+ gridx = !gridx;
+ gridy = !gridy;
+ break;
+
case 'd':
if(++delay_index >= NDELAYS)
delay_index = 0;
delay = delays[delay_index];
sprintf(title, "delay = %d ms", delay/1000);
- XChangeProperty(dpy, win, XA_WM_NAME, XA_STRING, 8,
+ XChangeProperty(dpy, win, XA_WM_NAME, XA_STRING, 8,
PropModeReplace,
(unsigned char *)title, strlen(title));
signal(SIGALRM, timeout_func);
@@ -717,6 +770,7 @@
#endif
}
break;
+
}
/* trying XShmGetImage when part of the rect is
@@ -736,6 +790,7 @@
if(ygrab > HeightOfScreen(scr)-height[SRC])
ygrab = HeightOfScreen(scr)-height[SRC];
+
}
#ifdef XSHM
@@ -753,63 +808,12 @@
}
#endif
- /* copy scaled lines from src to dst */
- for(j = flipxy?width[SRC]:height[SRC]; --j >= 0; ) {
- /* p1 point to begining of scanline j*magy in DST */
- p1 = &ximage[DST]->data[ximage[DST]->xoffset +
- j*magy*ximage[DST]->bytes_per_line ];
- /* p2 point to begining of scanline j in SRC */
- /* if flipy then line height[SRC]-1-j */
- p2 = &ximage[SRC]->data[ximage[SRC]->xoffset +
- (flipy?(height[SRC]-1-j):j)*ximage[SRC]->bytes_per_line ];
-
- if(flipxy) {
- int p2step = ximage[SRC]->bytes_per_line;
- p2 = &ximage[SRC]->data[ximage[SRC]->xoffset + (flipy?j:(width[SRC]-1-j))];
-
- if(flipx) {
- p2 += p2step * (height[SRC]-1);
- p2step = -p2step;
- }
-
- for(i = height[SRC]; --i >= 0;) {
- c = *p1++ = *p2;
- p2 += p2step;
- for(k = magx; --k > 0; )
- *p1++ = c;
- }
- }
- else if(flipx) {
- p2 += width[SRC];
- for(i = width[SRC]; --i >= 0;) {
- c = *p1++ = *--p2;
- for(k = magx; --k > 0; )
- *p1++ = c;
- }
- }
- else {
- for(i = width[SRC]; --i >= 0;) {
- c = *p1++ = *p2++;
- for(k = magx; --k > 0; )
- *p1++ = c;
- }
- }
-
- /* p1 point to begining of scanline j*magy in DST */
- p1 = &ximage[DST]->data[ximage[DST]->xoffset +
- j*magy*ximage[DST]->bytes_per_line ];
- /* p2 points to begining of next line */
- p2 = p1 + ximage[DST]->bytes_per_line;
- /* duplicate that line as needed */
- for(k = magy; --k > 0; ) {
-#ifdef BCOPY
- bcopy(p1, p2, width[DST]);
-#else
- memmove(p2, p1, width[DST]);
-#endif
- p2 += ximage[DST]->bytes_per_line;
- }
- }
+ if (depth == 8)
+ scale8();
+ else if (depth <= 8*sizeof(short))
+ scale16();
+ else if (depth <= 8*sizeof(int))
+ scale32();
#ifdef XSHM
XShmPutImage(dpy, win, gc, ximage[DST], 0, 0, 0, 0, width[DST], height[DST], False);
@@ -825,7 +829,7 @@
flipx?"-":"", magx,
flipxy?" <=>":";",
flipy?"-":"", magy);
- XChangeProperty(dpy, win, XA_WM_NAME, XA_STRING, 8,
+ XChangeProperty(dpy, win, XA_WM_NAME, XA_STRING, 8,
PropModeReplace,
(unsigned char *)title, strlen(title));
set_title = False;

21
x11/xzoom/files/patch-ad Normal file
View File

@ -0,0 +1,21 @@
--- xzoom.man.orig Thu Apr 18 01:37:48 1996
+++ xzoom.man Sat Jan 15 00:00:00 2000
@@ -3,7 +3,7 @@
.\"
.TH XZOOM 1X
.SH NAME
-xzoom \-
+xzoom \- magnify part of the screen, with fast updates
.SH SYNOPSIS
.B xzoom
[ \-display \fIdisplayname\fP ] [ \-mag \fImag\fP [ \fImag\fP ] ]
@@ -84,6 +84,9 @@
.B d
sets the delay between frame updates.
Built-in delays are 200, 100, 50, 10 and 0 ms.
+.TP 5
+.B g
+toggle grid on and off.
.TP 5
.B Mouse buttons
To set the location of the magnified are click the left mouse