home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-11-01 | 39.4 KB | 1,391 lines |
- Newsgroups: comp.sources.misc
- From: jmd@cyclone.bt.co.uk (John Downey)
- Subject: v33i027: xvi - portable multi-window vi-like editor, Part18/18
- Message-ID: <1992Oct24.172557.2598@sparky.imd.sterling.com>
- X-Md4-Signature: 847c823c0e17dfdcf055976349680ffd
- Date: Sat, 24 Oct 1992 17:25:57 GMT
- Approved: kent@sparky.imd.sterling.com
-
- Submitted-by: jmd@cyclone.bt.co.uk (John Downey)
- Posting-number: Volume 33, Issue 27
- Archive-name: xvi/part18
- Environment: Unix, MS-DOS, OS/2, QNX
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then feed it
- # into a shell via "sh file" or similar. To overwrite existing files,
- # type "sh file -c".
- # Contents: xvi/doc/README xvi/src/8086mm.inc xvi/src/i286.asm
- # xvi/src/ibmpc.h xvi/src/makefile.bsd xvi/src/makefile.qn4
- # xvi/src/makefile.qnx xvi/src/makefile.sun xvi/src/makefile.sv
- # xvi/src/makefile.tos xvi/src/makefile.ult xvi/src/makefile.usg
- # xvi/src/makefile.xen xvi/src/pc386.h xvi/src/ptrfunc.h
- # xvi/src/version.c xvi/src/xvi.icn
- # Wrapped by kent@sparky on Thu Oct 22 09:03:45 1992
- PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin ; export PATH
- echo If this archive is complete, you will see the following message:
- echo ' "shar: End of archive 18 (of 18)."'
- if test -f 'xvi/doc/README' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/doc/README'\"
- else
- echo shar: Extracting \"'xvi/doc/README'\" \(1783 characters\)
- sed "s/^X//" >'xvi/doc/README' <<'END_OF_FILE'
- XThis is a source release of the Xvi editor (derived from "STEVIE"), a
- Xclone of the UNIX editor `vi'. The program was originally developed
- Xfor the Atari ST, but has been ported to UNIX, MS-DOS, OS/2 and QNX as
- Xwell.
- X
- XXvi is a portable multi-window version of `vi'. In spite of its name,
- Xthere is, as yet, no X-Windows-specific version of it, but work is
- Xstill in progress. Existing versions use text windows separated by
- Xhorizontal status lines on character mode displays. The windows may
- Xrepresent different files being edited, or different views on to the
- Xsame file.
- X
- XUnix, MS-DOS and QNX versions have now been in regular use by the
- Xauthors, and many of our colleagues, for about three and a half years,
- Xand the editor's behaviour seems fairly satisfactory.
- X
- XThis source code is not in the public domain, but is provided for free,
- Xsubject to the license conditions set out in the COPYING file.
- X
- XThe files included in the `doc' directory are:
- X
- XREADME
- X What you're reading.
- X
- XCOPYING
- X The license under which xvi is provided. Please read and
- X understand this license if you are going to re-distribute xvi.
- X
- Xhelp
- X The help file used by xvi.
- X
- Xsource.ms
- Xsource.lst
- X A guide to the Xvi source code, including information about
- X how to port Xvi to different systems. Provided in [nt]roff -ms
- X source & nroff output formats. A PostScript version may follow
- X later.
- X
- Xsummary.ms
- Xsummary.lst
- X A document describing the differences between vi and xvi.
- X Same formats.
- X
- Xxvi.1
- Xxvi.lst
- X A Unix-style manual page, in [nt]roff -man & nroff output
- X formats.
- X
- XChances are, if you're on UNIX, MS-DOS or QNX, you'll be able
- Xto compile xvi without changing anything. Change directory
- Xinto `src', pick a makefile and go for it.
- X
- XIf that doesn't work, read doc/source.ms.
- X
- XChris & John Downey
- XOctober 1992
- END_OF_FILE
- if test 1783 -ne `wc -c <'xvi/doc/README'`; then
- echo shar: \"'xvi/doc/README'\" unpacked with wrong size!
- fi
- # end of 'xvi/doc/README'
- fi
- if test -f 'xvi/src/8086mm.inc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/8086mm.inc'\"
- else
- echo shar: Extracting \"'xvi/src/8086mm.inc'\" \(2248 characters\)
- sed "s/^X//" >'xvi/src/8086mm.inc' <<'END_OF_FILE'
- X; Copyright (c) 1990,1991,1992 Chris and John Downey
- X;***
- X;
- X; program name:
- X; xvi
- X; function:
- X; PD version of UNIX "vi" editor, with extensions.
- X; module name:
- X; 8086mm.inc
- X; module function:
- X; 8086 assembly language macros, mainly to help make assembly
- X; language modules memory model independent.
- X;
- X; This isn't really needed for Xvi (which uses the large memory
- X; model), but if we want to provide a portable terminal
- X; interface library which can also be used by other
- X; applications, it will almost certainly be needed.
- X; history:
- X; STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X; Originally by Tim Thompson (twitch!tjt)
- X; Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X; Heavily modified by Chris & John Downey
- X;***
- X
- X;
- X; Memory model definitions.
- X;
- Xs equ 0
- Xm equ 1
- Xc equ 2
- Xl equ 3
- X
- X;
- X; Define sizes of code & data pointers.
- X;
- Xif MEMMODEL eq s
- X CPTRSIZE = 2
- X DPTRSIZE = 2
- Xendif
- X
- Xif MEMMODEL eq m
- X CPTRSIZE = 4
- X DPTRSIZE = 2
- Xendif
- X
- Xif MEMMODEL eq c
- X CPTRSIZE = 2
- X DPTRSIZE = 4
- Xendif
- X
- Xif MEMMODEL eq l
- X CPTRSIZE = 4
- X DPTRSIZE = 4
- Xendif
- X
- X;
- X; Useful macros defined according to the memory model.
- X;
- X
- X;
- X; Declare an external function written in C.
- X;
- XC_extern macro funcname
- X if CPTRSIZE eq 4
- X extrn funcname : far
- X else
- X extrn funcname : near
- X endif
- X endm
- X
- X;
- X; Return to C caller.
- X;
- XC_ret macro
- X if CPTRSIZE eq 4
- X retf
- X else
- X db 0c3h ;; Near return.
- X endif
- X endm
- X
- X;
- X; Call another routine which returns with a C_ret & is in the same
- X; segment as the caller.
- X;
- XCn_call macro func
- X if CPTRSIZE eq 4
- X push cs
- X endif
- X call func
- X endm
- X
- X;
- X; Assign a one-word value by dereferencing a pointer.
- X;
- X; In C, this would be:
- X;
- X; *memptr = value;
- X;
- X; Note that:
- X;
- X; - bx is destroyed. For compact & large memory models, ds is
- X; also destroyed.
- X;
- X; - for small & medium memory models, memptr is a near pointer,
- X; which must be relative to ds.
- X;
- Xptrasg macro memptr, value
- X if DPTRSIZE eq 4
- X lds bx, dword ptr memptr
- X assume ds: nothing
- X else
- X mov bx, memptr
- X endif
- X mov [bx], value
- X endm
- X
- X;
- X; Generally useful macros, defined here for convenience.
- X;
- X
- X;
- X; Clear a register to 0.
- X;
- Xclear macro reg
- X xor reg, reg
- X endm
- X
- X;
- X; Test a register for equality with 0.
- X;
- Xtst macro reg
- X or reg, reg
- X endm
- END_OF_FILE
- if test 2248 -ne `wc -c <'xvi/src/8086mm.inc'`; then
- echo shar: \"'xvi/src/8086mm.inc'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/8086mm.inc'
- fi
- if test -f 'xvi/src/i286.asm' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/i286.asm'\"
- else
- echo shar: Extracting \"'xvi/src/i286.asm'\" \(1926 characters\)
- sed "s/^X//" >'xvi/src/i286.asm' <<'END_OF_FILE'
- X; Copyright (c) 1990,1991,1992 Chris and John Downey
- X.286P
- X
- XI286_TEXT segment word public 'CODE'
- X db "@(#)i286.asm 2.1 (Chris & John Downey) 7/29/92"
- X db 0
- X;***
- X;
- X; program name:
- X; xvi
- X; function:
- X; PD version of UNIX "vi" editor, with extensions.
- X; module name:
- X; i286.asm
- X; module function:
- X; Low-level 80286-specific routines for OS/2 version.
- X; history:
- X; STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X; Originally by Tim Thompson (twitch!tjt)
- X; Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X; Heavily modified by Chris & John Downey
- X;
- X;***
- X public _es0
- X public _newstack
- X;
- X; void far es0(void);
- X;
- X; Set the ES register to 0. Microsoft say this should be done
- X; before calling the OS/2 DosCreateThread() system call but, as
- X; far as I can see, they don't provide any C library function or
- X; compiler directive or any other easy way of doing it. So, if
- X; you want to write multi-thread code for OS/2, you just have to
- X; be an assembler hacker.
- X;
- X_es0 proc far
- X xor ax, ax
- X mov es, ax
- X ret
- X_es0 endp
- X
- X;
- X; unsigned char far * far newstack (int sub);
- X;
- X; This is utterly disgusting, but unavoidable. The fault lies
- X; with the design of OS/2, & the lack of provision for multiple
- X; stacks in Microsoft's high-level language products.
- X;
- X; We need the provision for multiple stacks because we are
- X; running multiple threads, but some Microsoft library functions
- X; are evidently compiled with stack probes, which give spurious
- X; stack overflow errors if we use multiple stacks. So we just
- X; use some space at the bottom of our default (48 kb) stack. The
- X; return value we want here is the top of the new stack, & we
- X; obtain it simply by subtracting the sub parameter from the
- X; stack pointer.
- X;
- X_newstack proc far
- X mov bx, sp
- X ;
- X ; Return offset in AX.
- X ;
- X mov ax, sp
- X sub ax, word ptr ss:[bx + 4]
- X ;
- X ; Return stack segment in DX.
- X ;
- X mov dx, ss
- X ret
- X_newstack endp
- XI286_TEXT ends
- X end
- END_OF_FILE
- if test 1926 -ne `wc -c <'xvi/src/i286.asm'`; then
- echo shar: \"'xvi/src/i286.asm'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/i286.asm'
- fi
- if test -f 'xvi/src/ibmpc.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/ibmpc.h'\"
- else
- echo shar: Extracting \"'xvi/src/ibmpc.h'\" \(1958 characters\)
- sed "s/^X//" >'xvi/src/ibmpc.h' <<'END_OF_FILE'
- X/* Copyright (c) 1990,1991,1992 Chris and John Downey */
- X/***
- X
- X* @(#)ibmpc.h 2.1 (Chris & John Downey) 7/29/92
- X
- X* program name:
- X xvi
- X* function:
- X PD version of UNIX "vi" editor, with extensions.
- X* module name:
- X ibmpc.h
- X* module function:
- X Declarations for terminal interface module for IBM PC
- X compatibles running MS-DOS.
- X
- X* history:
- X STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X Originally by Tim Thompson (twitch!tjt)
- X Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X Heavily modified by Chris & John Downey
- X
- X***/
- X
- X#include <conio.h>
- X
- X#define can_ins_line FALSE
- X#define can_del_line FALSE
- X#define can_scroll_area TRUE
- X/*
- X * tty_linefeed() isn't needed if can_scroll_area is TRUE.
- X */
- X#define tty_linefeed()
- X#define can_inschar FALSE
- X#define inschar(c)
- X#define cost_goto 0 /* cost of tty_goto() */
- X
- X#define tty_close()
- X#define vis_cursor()
- X#define invis_cursor()
- X#define insert_line()
- X#define delete_line()
- X
- X/*
- X * Colour handling: default screen colours for PC's.
- X */
- X#define DEF_COLOUR 7 /* white on black */
- X#define DEF_STCOLOUR 112 /* black on white */
- X#define DEF_SYSCOLOUR 7 /* white on black */
- X
- X/*
- X * Screen dimensions.
- X */
- Xextern unsigned int Columns;
- Xextern unsigned int Rows;
- X
- X/*
- X * Declarations for routines in ibmpc_a.asm & ibmpc_c.c:
- X */
- Xextern void alert P((void));
- Xextern void erase_display P((void));
- Xextern void erase_line P((void));
- Xextern void flush_output P((void));
- Xextern void hidemouse P((void));
- Xextern int inchar P((long));
- Xextern unsigned mousestatus P((unsigned *, unsigned *));
- Xextern void outchar P((int));
- Xextern void outstr P((char *));
- Xextern void scroll_down P((unsigned, unsigned, int));
- Xextern void scroll_up P((unsigned, unsigned, int));
- Xextern void set_colour P((int));
- Xextern void showmouse P((void));
- Xextern void tty_endv P((void));
- Xextern void tty_goto P((int, int));
- Xextern void tty_open P((unsigned *, unsigned *));
- Xextern void tty_startv P((void));
- END_OF_FILE
- if test 1958 -ne `wc -c <'xvi/src/ibmpc.h'`; then
- echo shar: \"'xvi/src/ibmpc.h'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/ibmpc.h'
- fi
- if test -f 'xvi/src/makefile.bsd' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.bsd'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.bsd'\" \(1890 characters\)
- sed "s/^X//" >'xvi/src/makefile.bsd' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.bsd 2.3 (Chris & John Downey) 9/3/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.bsd
- X# module function:
- X# Makefile for Berkeley UNIX.
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XSYSDEFS= -DUNIX -DBSD
- XINCDIRS=
- X
- XLIBS= -ltermcap
- XLDFLAGS=
- X
- XCFLAGS= $(SYSDEFS) $(INCDIRS) -O
- XLINTFLAGS= $(SYSDEFS) $(INCDIRS) -ah
- X
- XMACHSRC= unix.c termcap.c defscr.c
- XMACHOBJ= unix.o termcap.o defscr.o
- XMACHINC= unix.h termcap.h
- X
- XGENINC= ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h virtscr.h
- X
- XGENSRC= alloc.c ascii.c buffers.c cmdline.c cursor.c \
- X edit.c ex_cmds1.c ex_cmds2.c events.c fileio.c \
- X find.c flexbuf.c map.c mark.c misccmds.c movement.c \
- X normal.c param.c pipe.c preserve.c ptrfunc.c \
- X regexp.c screen.c search.c signal.c startup.c status.c \
- X tags.c undo.c version.c windows.c yankput.c
- X
- XGENOBJ= alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o signal.o startup.o status.o \
- X tags.o undo.o version.o windows.o yankput.o
- X
- Xall: xvi
- X
- Xxvi: $(GENOBJ) $(MACHOBJ)
- X $(CC) $(CFLAGS) -o xvi $(GENOBJ) $(MACHOBJ) $(LIBS)
- X
- X.c.o: $< $(GENINC) $(MACHINC) param.c
- X $(CC) $(CFLAGS) -c $<
- X
- Xlint:
- X lint $(LINTFLAGS) $(GENSRC) $(MACHSRC)
- X
- Xlistsrc:
- X @echo $(GENSRC) $(MACHSRC) $(GENINC) $(MACHINC)
- X
- Xlistobj:
- X @echo $(GENOBJ) $(MACHOBJ)
- X
- X
- Xtags: $(GENSRC) $(MACHSRC)
- X ctags -t $(GENSRC) $(MACHSRC) $(GENINC) $(MACHINC)
- X
- Xclean:
- X rm $(GENOBJ) $(MACHOBJ) xvi
- X
- X$(GENOBJ): $(GENINC) $(MACHINC)
- END_OF_FILE
- if test 1890 -ne `wc -c <'xvi/src/makefile.bsd'`; then
- echo shar: \"'xvi/src/makefile.bsd'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.bsd'
- fi
- if test -f 'xvi/src/makefile.qn4' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.qn4'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.qn4'\" \(1957 characters\)
- sed "s/^X//" >'xvi/src/makefile.qn4' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.qn4 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.qn4
- X# module function:
- X# Makefile for QNX V4.1 (POSIX-conformant) using Watcom C Compiler.
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XSYSDEFS= -DUNIX -DTERMIOS -DPOSIX -DHELPFILE=\"/usr/local/lib/xvi.help\"
- XINCDIRS= -I/usr/include
- X
- XLIBS= -ltermcap
- XLD= cc
- XLDFLAGS= -Cd -Q -ml -2 -w2 -N32768
- X
- XCC= cc
- XCFLAGS= $(SYSDEFS) $(INCDIRS) -Cd -Q -Oil -ml -2 -w2
- XLINTFLAGS= $(SYSDEFS) $(INCDIRS) -ah
- X
- XMACHSRC= unix.c termcap.c defscr.c
- XMACHOBJ= unix.o termcap.o defscr.o
- XMACHINC= unix.h termcap.h
- X
- XGENINC= ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h virtscr.h
- X
- XGENSRC= alloc.c ascii.c buffers.c cmdline.c cursor.c \
- X edit.c ex_cmds1.c ex_cmds2.c events.c fileio.c \
- X find.c flexbuf.c map.c mark.c misccmds.c movement.c \
- X normal.c param.c pipe.c preserve.c ptrfunc.c \
- X regexp.c screen.c search.c signal.c startup.c status.c \
- X tags.c undo.c version.c windows.c yankput.c
- X
- XGENOBJ= alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o signal.o startup.o status.o \
- X tags.o undo.o version.o windows.o yankput.o
- X
- Xall: xvi
- X
- Xxvi: $(GENOBJ) $(MACHOBJ)
- X $(LD) $(LDFLAGS) -o xvi $(GENOBJ) $(MACHOBJ) $(LIBS)
- X
- X.c.o: $< $(GENINC) $(MACHINC) param.c
- X $(CC) $(CFLAGS) -c $<
- X
- Xlint:
- X lint $(LINTFLAGS) $(GENSRC) $(MACHSRC)
- X
- Xtags: $(GENSRC) $(MACHSRC)
- X ctags -t $(GENSRC) $(MACHSRC) $(GENINC) $(MACHINC)
- X
- Xclean:
- X rm $(GENOBJ) $(MACHOBJ) xvi
- X
- X$(GENOBJ): $(GENINC) $(MACHINC)
- END_OF_FILE
- if test 1957 -ne `wc -c <'xvi/src/makefile.qn4'`; then
- echo shar: \"'xvi/src/makefile.qn4'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.qn4'
- fi
- if test -f 'xvi/src/makefile.qnx' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.qnx'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.qnx'\" \(1640 characters\)
- sed "s/^X//" >'xvi/src/makefile.qnx' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.qnx 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.qnx
- X# module function:
- X# Makefile for QNX, using the CII C86 ANSI Compiler.
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XMACHINE= qnx
- XMACHSRC= $(MACHINE).c
- XMACHOBJ= $(MACHINE).obj
- X
- X#DEBUGFLAGS=-Zf
- X
- XCQ= cq
- XCQFLAGS= -DQNX -c -Za -Ze5 $(DEBUGFLAGS) -G0 -AL -EL
- XCOMPILE = $(CC) $(CFLAGS)
- XLD=%sync; cq
- XLDFLAGS= -Za -G0 -AL -F8000 $(DEBUGFLAGS)
- XLIB=
- X
- XINCLUDE=ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h \
- X virtscr.h qnx.h
- X
- XSRC= defscr.c \
- X alloc.c ascii.c buffers.c cmdline.c cursor.c \
- X edit.c ex_cmds1.c ex_cmds2.c events.c fileio.c \
- X find.c flexbuf.c map.c mark.c misccmds.c movement.c \
- X normal.c param.c pipe.c preserve.c ptrfunc.c \
- X regexp.c screen.c search.c signal.c startup.c status.c \
- X tags.c undo.c version.c windows.c yankput.c \
- X $(MACHSRC)
- X
- XOBJ= defscr.obj \
- X alloc.obj ascii.obj buffers.obj cmdline.obj cursor.obj \
- X edit.obj ex_cmds1.obj ex_cmds2.obj events.obj fileio.obj \
- X find.obj flexbuf.obj map.obj mark.obj misccmds.obj movement.obj \
- X normal.obj param.obj pipe.obj preserve.obj ptrfunc.obj \
- X regexp.obj screen.obj search.obj signal.obj startup.obj status.obj \
- X tags.obj undo.obj version.obj windows.obj yankput.obj \
- X $(MACHOBJ)
- X
- Xxvi: $(OBJ)
- X $(LD) -Fexvi $(LDFLAGS) $(OBJ)
- X
- Xclean:
- X rm *.obj
- X rm *.lnk
- X rm xvi
- END_OF_FILE
- if test 1640 -ne `wc -c <'xvi/src/makefile.qnx'`; then
- echo shar: \"'xvi/src/makefile.qnx'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.qnx'
- fi
- if test -f 'xvi/src/makefile.sun' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.sun'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.sun'\" \(2198 characters\)
- sed "s/^X//" >'xvi/src/makefile.sun' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.sun 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.sun
- X# module function:
- X# Makefile for SunOS
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XSYSDEFS= -DUNIX -DBSD -DTERMIOS
- XINCDIRS=
- X
- XLIBS= -ltermcap
- XLDFLAGS=
- X
- XDEBUGFLAG= -g
- XOPTFLAG= -O2
- XCFLAGS= $(SYSDEFS) $(INCDIRS) $(OPTFLAG)
- XLINTFLAGS= $(SYSDEFS) $(INCDIRS) -ah
- X
- XPURIFYHOME= /common/purify
- XPURIFY= $(PURIFYHOME)/purify
- X
- XMACHSRC= unix.c termcap.c defscr.c
- XMACHOBJ= unix.o termcap.o defscr.o
- XMACHINC= unix.h termcap.h
- X
- XGENINC= ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h virtscr.h
- X
- XGENSRC= alloc.c ascii.c buffers.c cmdline.c cursor.c \
- X edit.c ex_cmds1.c ex_cmds2.c events.c fileio.c \
- X find.c flexbuf.c map.c mark.c misccmds.c movement.c \
- X normal.c param.c pipe.c preserve.c ptrfunc.c \
- X regexp.c screen.c search.c signal.c startup.c status.c \
- X tags.c undo.c version.c windows.c yankput.c
- X
- XGENOBJ= alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o signal.o startup.o status.o \
- X tags.o undo.o version.o windows.o yankput.o
- X
- Xall: xvi
- X
- Xxvi: $(GENOBJ) $(MACHOBJ)
- X $(CC) $(CFLAGS) -o xvi $(GENOBJ) $(MACHOBJ) $(LIBS)
- X
- Xpurify: $(GENOBJ) $(MACHOBJ)
- X $(CC) $(CFLAGS) -c -D_exit=exit unix.c
- X PURIFYHOME=$(PURIFYHOME) $(PURIFY) $(CC) $(CFLAGS) -o xvi \
- X $(GENOBJ) $(MACHOBJ) $(LIBS)
- X
- X.c.o: $< $(GENINC) $(MACHINC) param.c
- X $(CC) $(CFLAGS) -c -o $@ $<
- X
- Xlint:
- X lint $(LINTFLAGS) $(GENSRC) $(MACHSRC)
- X
- Xtags: $(GENSRC) $(MACHSRC)
- X ctags -t $(GENSRC) $(MACHSRC) $(GENINC) $(MACHINC)
- X
- Xclean:
- X csh -c 'rm -f *.{o,obj} xvi &'
- X
- X$(GENOBJ): $(GENINC) $(MACHINC)
- X
- Xsources:
- X sccs check || sccs delget `sccs tell`
- X
- Xinstall:
- X mv xvi $(HOME)/bin/`arch`
- X
- Xmemtest:
- X $(CC) $(CFLAGS) -DMEMTEST=1 -c unix.c
- END_OF_FILE
- if test 2198 -ne `wc -c <'xvi/src/makefile.sun'`; then
- echo shar: \"'xvi/src/makefile.sun'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.sun'
- fi
- if test -f 'xvi/src/makefile.sv' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.sv'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.sv'\" \(1935 characters\)
- sed "s/^X//" >'xvi/src/makefile.sv' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.sv 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.sv
- X# module function:
- X# Makefile for SunView version
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XSYSDEFS= -DUNIX -DBSD -DSUNVIEW
- XINCDIRS=
- X
- XFRONTLIB= -lsuntool -lsunwindow -lpixrect
- XBACKLIB=
- XLDFLAGS=
- X
- XCFLAGS= $(SYSDEFS) $(INCDIRS) -O2
- XLINTFLAGS= $(SYSDEFS) $(INCDIRS) -ah
- X
- XMACHINC= unix.h sunview.h
- X
- XGENINC= ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h virtscr.h
- X
- XGENOBJ= alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o signal.o startup.o status.o \
- X tags.o undo.o version.o windows.o yankput.o
- X
- XGENSRC= $(GENOBJ:.o=.c)
- X
- XBACKOBJ= $(GENOBJ) unix.o defscr.o sunback.o mouse.o
- XBACKSRC= $(BACKOBJ:.o=.c)
- X
- XFRONTOBJ= sunfront.o
- XFRONTSRC= sunfront.c
- X
- XSRC= $(FRONTSRC) $(BACKSRC)
- XOBJ= $(FRONTOBJ) $(BACKOBJ)
- X
- XFRONT= xvi.sunview
- XBACK= xvi.main
- X
- XALL= $(FRONT) $(BACK)
- X
- Xall: $(ALL)
- X
- X$(FRONT): $(FRONTOBJ)
- X $(CC) $(CFLAGS) -o $@ $(FRONTOBJ) $(FRONTLIB)
- X
- X$(BACK): $(BACKOBJ)
- X $(CC) $(CFLAGS) -o $@ $(BACKOBJ) $(BACKLIB)
- X
- X$(FRONTOBJ): $(FRONTSRC) $(GENINC) $(MACHINC)
- X $(CC) $(CFLAGS) -DXVI_MAINPROG=\"$(BACK)\" \
- X -c -o $@ $(FRONTSRC)
- X
- X.c.o: $< $(GENINC) $(MACHINC)
- X $(CC) $(CFLAGS) -o $@ -c $<
- X
- Xsources:
- X sccs check || sccs delget `sccs tell`
- X
- Xlint:
- X lint $(LINTFLAGS) $(SRC)
- X
- Xtags: $(SRC)
- X ctags -t $(SRC) $(GENINC) $(MACHINC)
- X
- Xclean:
- X csh -c 'rm -f *.{o,obj} &'
- X
- Xinstall:
- X mv $(ALL) $(HOME)/bin/`arch`
- X
- X$(OBJ): $(GENINC) $(MACHINC)
- END_OF_FILE
- if test 1935 -ne `wc -c <'xvi/src/makefile.sv'`; then
- echo shar: \"'xvi/src/makefile.sv'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.sv'
- fi
- if test -f 'xvi/src/makefile.tos' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.tos'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.tos'\" \(1786 characters\)
- sed "s/^X//" >'xvi/src/makefile.tos' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.tos 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.tos
- X# module function:
- X# Makefile for the Atari ST - Megamax or Lattice 5.0 C compiler
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- X# This for MegaMax:
- X#CFLAGS=-DATARI -DMEGAMAX
- X# This for Lattice:
- XCFLAGS= -ca -DATARI
- X
- XMACHOBJ=tos.o
- XMACHSRC=tos.c
- X
- XINCLUDE=ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h \
- X virtscr.h tos.h
- X
- XOBJ= defscr.o \
- X alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o signal.o startup.o status.o \
- X tags.o undo.o version.o windows.o yankput.o \
- X $(MACHOBJ)
- X
- X# Megamax rule
- X#.c.o: $< $(INCLUDE) param.c
- X# mmcc $(CFLAGS) $<
- X# mmimp $*.o
- X# mmlib rv vi.lib $*.o
- X
- X# Megamax:
- X#xvi.ttp : $(OBJ)
- X# $(LINKER) vi.lib $(LIBS) -o xvi.ttp
- X
- X# Lattice:
- Xxvi.ttp : $(OBJ) tos.lnk
- X clink with tos.lnk
- X
- Xtos.lnk: makefile
- X#
- X# Suitable commands to create the link file need to go here; see
- X# makefile.zc3 for an MS-DOS example.
- X#
- X from c:\lib\c.o
- X alloc.o ascii.o buffers.o cmdline.o defscr.o
- X edit.o ex_cmds1.o ex_cmds2.o events.o
- X fileio.o find.o flexbuf.o
- X input.o startup.o mark.o misccmds.o movement.o normal.o param.o
- X preserve.o ptrfunc.o regexp.o screen.o search.o signal.o
- X status.o tos.o undo.o windows.o
- X yankput.o
- X lib c:\lib\lc.lib c:\lib\lcm.lib
- X to xvi.ttp
- X
- Xclean :
- X $(RM) $(OBJ) vi.lib
- END_OF_FILE
- if test 1786 -ne `wc -c <'xvi/src/makefile.tos'`; then
- echo shar: \"'xvi/src/makefile.tos'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.tos'
- fi
- if test -f 'xvi/src/makefile.ult' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.ult'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.ult'\" \(1793 characters\)
- sed "s/^X//" >'xvi/src/makefile.ult' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.ult 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.ult
- X# module function:
- X# Makefile for DEC Ultrix
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XSYSDEFS= -DUNIX -DBSD
- XINCDIRS=
- X
- XLIBS= -ltermcap
- XLDFLAGS=
- X
- XCFLAGS= $(SYSDEFS) $(INCDIRS) -O
- XLINTFLAGS= $(SYSDEFS) $(INCDIRS) -ah
- X
- XMACHSRC= unix.c termcap.c defscr.c
- XMACHOBJ= unix.o termcap.o defscr.o
- XMACHINC= unix.h termcap.h
- X
- XGENINC= ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h virtscr.h
- X
- XGENSRC= alloc.c ascii.c buffers.c cmdline.c cursor.c \
- X edit.c ex_cmds1.c ex_cmds2.c events.c fileio.c \
- X find.c flexbuf.c map.c mark.c misccmds.c movement.c \
- X normal.c param.c pipe.c preserve.c ptrfunc.c \
- X regexp.c screen.c search.c signal.c startup.c status.c \
- X tags.c undo.c version.c windows.c yankput.c
- X
- XGENOBJ= alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o signal.o startup.o status.o \
- X tags.o undo.o version.o windows.o yankput.o
- X
- Xall: xvi
- X
- Xxvi: $(GENOBJ) $(MACHOBJ)
- X $(CC) $(CFLAGS) -o xvi $(GENOBJ) $(MACHOBJ) $(LIBS)
- X
- X.c.o: $< $(GENINC) $(MACHINC) param.c
- X $(CC) $(CFLAGS) -c -o $@ $<
- X
- Xlint:
- X lint $(LINTFLAGS) $(GENSRC) $(MACHSRC)
- X
- Xtags: $(GENSRC) $(MACHSRC)
- X ctags -t $(GENSRC) $(MACHSRC) $(GENINC) $(MACHINC)
- X
- Xclean:
- X rm $(GENOBJ) $(MACHOBJ) xvi
- X
- X$(GENOBJ): $(GENINC) $(MACHINC)
- END_OF_FILE
- if test 1793 -ne `wc -c <'xvi/src/makefile.ult'`; then
- echo shar: \"'xvi/src/makefile.ult'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.ult'
- fi
- if test -f 'xvi/src/makefile.usg' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.usg'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.usg'\" \(1799 characters\)
- sed "s/^X//" >'xvi/src/makefile.usg' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.usg 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.usg
- X# module function:
- X# Makefile for System V UNIX.
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XSYSDEFS= -DUNIX -DTERMIO
- XINCDIRS=
- X
- XLIBS= -ltermcap
- XLDFLAGS=
- X
- XCFLAGS= $(SYSDEFS) $(INCDIRS) -O
- XLINTFLAGS= $(SYSDEFS) $(INCDIRS) -ah
- X
- XMACHSRC= unix.c termcap.c defscr.c
- XMACHOBJ= unix.o termcap.o defscr.o
- XMACHINC= unix.h termcap.h
- X
- XGENINC= ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h virtscr.h
- X
- XGENSRC= alloc.c ascii.c buffers.c cmdline.c cursor.c \
- X edit.c ex_cmds1.c ex_cmds2.c events.c fileio.c \
- X find.c flexbuf.c map.c mark.c misccmds.c movement.c \
- X normal.c param.c pipe.c preserve.c ptrfunc.c \
- X regexp.c screen.c search.c signal.c startup.c status.c \
- X tags.c undo.c version.c windows.c yankput.c
- X
- XGENOBJ= alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o signal.o startup.o status.o \
- X tags.o undo.o version.o windows.o yankput.o
- X
- Xall: xvi
- X
- Xxvi: $(GENOBJ) $(MACHOBJ)
- X $(CC) $(CFLAGS) -o xvi $(GENOBJ) $(MACHOBJ) $(LIBS)
- X
- X.c.o: $< $(GENINC) $(MACHINC) param.c
- X $(CC) $(CFLAGS) -c -o $@ $<
- X
- Xlint:
- X lint $(LINTFLAGS) $(GENSRC) $(MACHSRC)
- X
- Xtags: $(GENSRC) $(MACHSRC)
- X ctags -t $(GENSRC) $(MACHSRC) $(GENINC) $(MACHINC)
- X
- Xclean:
- X rm $(GENOBJ) $(MACHOBJ) xvi
- X
- X$(GENOBJ): $(GENINC) $(MACHINC)
- END_OF_FILE
- if test 1799 -ne `wc -c <'xvi/src/makefile.usg'`; then
- echo shar: \"'xvi/src/makefile.usg'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.usg'
- fi
- if test -f 'xvi/src/makefile.xen' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/makefile.xen'\"
- else
- echo shar: Extracting \"'xvi/src/makefile.xen'\" \(1795 characters\)
- sed "s/^X//" >'xvi/src/makefile.xen' <<'END_OF_FILE'
- X# Copyright (c) 1990,1991,1992 Chris and John Downey
- X#***
- X#
- X# @(#)makefile.xen 2.2 (Chris & John Downey) 7/31/92
- X#
- X# program name:
- X# xvi
- X# function:
- X# PD version of UNIX "vi" editor, with extensions.
- X# module name:
- X# makefile.xen
- X# module function:
- X# Makefile for Xenix on a 386.
- X# history:
- X# STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X# Originally by Tim Thompson (twitch!tjt)
- X# Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X# Heavily modified by Chris & John Downey
- X#***
- X
- XSYSDEFS= -DUNIX -DTERMIO -DNO_RENAME
- XINCDIRS=
- X
- XLIBS= -ltermcap
- XLDFLAGS=
- X
- XCFLAGS= $(SYSDEFS) $(INCDIRS) -Ox
- XLINTFLAGS= $(SYSDEFS) $(INCDIRS) -ah
- X
- XMACHSRC= unix.c termcap.c defscr.c
- XMACHOBJ= unix.o termcap.o defscr.o
- XMACHINC= unix.h termcap.h
- X
- XGENINC= ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h virtscr.h
- X
- XGENSRC= alloc.c ascii.c buffers.c cmdline.c cursor.c \
- X edit.c ex_cmds1.c ex_cmds2.c events.c fileio.c \
- X find.c flexbuf.c map.c mark.c misccmds.c movement.c \
- X normal.c param.c pipe.c preserve.c ptrfunc.c \
- X regexp.c screen.c search.c startup.c status.c tags.c \
- X undo.c version.c windows.c yankput.c
- X
- XGENOBJ= alloc.o ascii.o buffers.o cmdline.o cursor.o \
- X edit.o ex_cmds1.o ex_cmds2.o events.o fileio.o \
- X find.o flexbuf.o map.o mark.o misccmds.o movement.o \
- X normal.o param.o pipe.o preserve.o ptrfunc.o \
- X regexp.o screen.o search.o startup.o status.o tags.o \
- X undo.o version.o windows.o yankput.o
- X
- Xall: xvi
- X
- Xxvi: $(GENOBJ) $(MACHOBJ)
- X $(CC) $(CFLAGS) -o xvi $(GENOBJ) $(MACHOBJ) $(LIBS)
- X
- X.c.o: $< $(GENINC) $(MACHINC) param.c
- X $(CC) $(CFLAGS) -c -o $@ $<
- X
- Xlint:
- X lint $(LINTFLAGS) $(GENSRC) $(MACHSRC)
- X
- Xtags: $(GENSRC) $(MACHSRC)
- X ctags -t $(GENSRC) $(MACHSRC) $(GENINC) $(MACHINC)
- X
- Xclean:
- X rm $(GENOBJ) $(MACHOBJ) xvi
- X
- X$(GENOBJ): $(GENINC) $(MACHINC)
- END_OF_FILE
- if test 1795 -ne `wc -c <'xvi/src/makefile.xen'`; then
- echo shar: \"'xvi/src/makefile.xen'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/makefile.xen'
- fi
- if test -f 'xvi/src/pc386.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/pc386.h'\"
- else
- echo shar: Extracting \"'xvi/src/pc386.h'\" \(2101 characters\)
- sed "s/^X//" >'xvi/src/pc386.h' <<'END_OF_FILE'
- X/* Copyright (c) 1990,1991,1992 Chris and John Downey */
- X/***
- X
- X* @(#)pc386.h 2.1 (Chris & John Downey) 7/29/92
- X
- X* program name:
- X xvi
- X* function:
- X PD version of UNIX "vi" editor, with extensions.
- X* module name:
- X pc386.h
- X* module function:
- X Definitions for MS-DOS 386 protected mode version.
- X
- X See notes in pc386.c.
- X* history:
- X STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X Originally by Tim Thompson (twitch!tjt)
- X Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X Heavily modified by Chris & John Downey
- X
- X***/
- X
- X#include <conio.h>
- X#include <disp.h>
- X#include <int.h>
- X#include <msmouse.h>
- X#include <sound.h>
- X
- X/*
- X * Screen dimensions.
- X */
- Xextern unsigned Rows,
- X Columns;
- X
- X/*
- X * Colour handling: default screen colours for PC's.
- X */
- X#define DEF_COLOUR 7 /* white on black */
- X#define DEF_STCOLOUR 112 /* black on white */
- X#define DEF_SYSCOLOUR 7 /* white on black */
- X
- X#define alert() sound_beep(0x299)
- X#define can_ins_line FALSE
- X#define can_del_line FALSE
- X#define can_scroll_area TRUE
- X#define can_inschar FALSE
- X#define cost_goto 0 /* cost of tty_goto() */
- X#define delete_line()
- X#define erase_display() (disp_move(0,0),disp_eeop())
- X#define erase_line() disp_eeol()
- X#define flush_output() disp_flush()
- X#define hidemouse() msm_hidecursor()
- X#define inschar(c)
- X#define insert_line()
- X#define invis_cursor()
- X#define mousestatus(x,y) msm_getstatus(x,y)
- X#define outchar(c) disp_putc(c)
- X#define outstr(s) disp_puts(s)
- X#define scroll_down(s,e,n) pc_scroll((s),(e),-(n))
- X#define scroll_up(s,e,n) pc_scroll(s,e,n)
- X#define set_colour(n) disp_setattr(n)
- X#define showmouse() msm_showcursor()
- X#define tty_goto(r,c) disp_move(r,c)
- X#define tty_close() (disp_inited && disp_close())
- X/*
- X * tty_linefeed() isn't needed if can_scroll_area is TRUE.
- X */
- X#define tty_linefeed()
- X#define vis_cursor()
- X
- X/*
- X * Declarations for routines in ibmpc_c.c & pc386.c.
- X */
- Xextern int inchar P((long));
- Xextern void pc_scroll P((unsigned, unsigned, int));
- Xextern void tty_endv P((void));
- Xextern void tty_open P((unsigned *, unsigned *));
- Xextern void tty_startv P((void));
- END_OF_FILE
- if test 2101 -ne `wc -c <'xvi/src/pc386.h'`; then
- echo shar: \"'xvi/src/pc386.h'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/pc386.h'
- fi
- if test -f 'xvi/src/ptrfunc.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/ptrfunc.h'\"
- else
- echo shar: Extracting \"'xvi/src/ptrfunc.h'\" \(705 characters\)
- sed "s/^X//" >'xvi/src/ptrfunc.h' <<'END_OF_FILE'
- X/* Copyright (c) 1990,1991,1992 Chris and John Downey */
- X/***
- X
- X* @(#)ptrfunc.h 2.1 (Chris & John Downey) 7/29/92
- X
- X* program name:
- X xvi
- X* function:
- X PD version of UNIX "vi" editor, with extensions.
- X* module name:
- X ptrfunc.h
- X* module function:
- X Functions on Posn's - defined here for speed, since they
- X typically get called "on a per-character basis".
- X* history:
- X STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X Originally by Tim Thompson (twitch!tjt)
- X Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X Heavily modified by Chris & John Downey
- X
- X***/
- X
- X/*
- X * gchar(lp) - get the character at position "lp"
- X */
- X#define gchar(lp) ((lp)->p_line->l_text[(lp)->p_index])
- END_OF_FILE
- if test 705 -ne `wc -c <'xvi/src/ptrfunc.h'`; then
- echo shar: \"'xvi/src/ptrfunc.h'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/ptrfunc.h'
- fi
- if test -f 'xvi/src/version.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/version.c'\"
- else
- echo shar: Extracting \"'xvi/src/version.c'\" \(758 characters\)
- sed "s/^X//" >'xvi/src/version.c' <<'END_OF_FILE'
- X/* Copyright (c) 1992 Chris and John Downey */
- X#ifndef lint
- Xstatic char *sccsid = "@(#)version.c 2.4 (Chris & John Downey) 10/15/92";
- X#endif
- X
- X/***
- X
- X* program name:
- X xvi
- X* function:
- X PD version of UNIX "vi" editor, with extensions.
- X* module name:
- X version.c
- X* module function:
- X Version string definition.
- X* history:
- X STEVIE - ST Editor for VI Enthusiasts, Version 3.10
- X Originally by Tim Thompson (twitch!tjt)
- X Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
- X Heavily modified by Chris & John Downey
- X
- X***/
- X
- X#ifndef lint
- Xstatic char *copyright = "@(#)Copyright (c) 1992 Chris & John Downey";
- X#endif
- X
- X#ifdef __DATE__
- X char Version[] = "Xvi 2.15 " __DATE__;
- X#else
- X char Version[] = "Xvi 2.15 15th October 1992";
- X#endif
- END_OF_FILE
- if test 758 -ne `wc -c <'xvi/src/version.c'`; then
- echo shar: \"'xvi/src/version.c'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/version.c'
- fi
- if test -f 'xvi/src/xvi.icn' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xvi/src/xvi.icn'\"
- else
- echo shar: Extracting \"'xvi/src/xvi.icn'\" \(1933 characters\)
- sed "s/^X//" >'xvi/src/xvi.icn' <<'END_OF_FILE'
- X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
- X */
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0030,0x0000,0x0000,0x0000,0x00F0,
- X 0x0000,0x0000,0x0000,0x00F0,0x0000,0x0000,0x0000,0x00F0,
- X 0x0000,0x0000,0x0000,0x00F0,0x0000,0x0000,0x0000,0x00F0,
- X 0x0000,0x0000,0x0000,0x00E0,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0008,0x0000,0x0000,
- X 0x0C00,0x011C,0x0000,0x0FF0,0x3E00,0x033E,0x0000,0x18F0,
- X 0x7E00,0x067E,0x0000,0x30F0,0x1F00,0x041F,0x0000,0x60F0,
- X 0x1F00,0x0C1F,0x0000,0x40F0,0x0F80,0x080F,0x8000,0xC0F0,
- X 0x0F80,0x180F,0x8000,0x80F0,0x07C0,0x100F,0x8001,0x80F0,
- X 0x07C0,0x3007,0xC001,0x00F0,0x03E0,0x2007,0xC003,0x00F0,
- X 0x03E0,0x6007,0xC002,0x00F0,0x01F0,0x4003,0xE006,0x00F0,
- X 0x01F0,0xC003,0xE004,0x00F0,0x00F8,0x8001,0xE00C,0x00F0,
- X 0x00F9,0x8001,0xF008,0x00F0,0x00FD,0x0001,0xF018,0x00F0,
- X 0x007F,0x0000,0xF010,0x00F0,0x007E,0x0000,0xF810,0x00F0,
- X 0x003E,0x0000,0xF830,0x00F0,0x003E,0x0000,0xF820,0x00F0,
- X 0x001F,0x0000,0x7860,0x00F0,0x001F,0x0000,0x7C40,0x00F0,
- X 0x003F,0x8000,0x7C40,0x00F0,0x002F,0x8000,0x7CC0,0x00F0,
- X 0x0067,0xC000,0x7C80,0x00F0,0x0047,0xC000,0x3C80,0x00F0,
- X 0x00C3,0xE000,0x3E80,0x00F0,0x0083,0xE000,0x3E80,0x00F0,
- X 0x0181,0xF000,0x3F80,0x00F0,0x0101,0xF000,0x1F00,0x00F0,
- X 0x0300,0xF800,0x1F00,0x00F0,0x0200,0xF800,0x1F00,0x00F0,
- X 0x0600,0x7C00,0x1F00,0x00F0,0x0400,0x7C00,0x0F00,0x00F0,
- X 0x0C00,0x3F80,0x0F00,0x00F0,0x1800,0x3F00,0x0E00,0x00F2,
- X 0x3000,0x1E00,0x0E00,0x00FC,0x6000,0x0C00,0x0C00,0x0078,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
- END_OF_FILE
- if test 1933 -ne `wc -c <'xvi/src/xvi.icn'`; then
- echo shar: \"'xvi/src/xvi.icn'\" unpacked with wrong size!
- fi
- # end of 'xvi/src/xvi.icn'
- fi
- echo shar: End of archive 18 \(of 18\).
- cp /dev/null ark18isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 18 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still must unpack the following archives:
- echo " " ${MISSING}
- fi
- exit 0
- exit 0 # Just in case...
-