home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Professional
/
OS2PRO194.ISO
/
os2
/
editor
/
stevie
/
diffs
< prev
next >
Wrap
Text File
|
1994-01-31
|
21KB
|
673 lines
diff -cs ./os2.c c:\stevie/os2.c
*** ./os2.c Tue May 01 22:47:44 1990
--- c:/stevie/os2.c Tue Oct 08 21:01:06 1991
***************
*** 39,46 ****
return K_LARROW;
case 0x4d:
return K_RARROW;
- case 0x52:
- return K_INSERT;
case 0x47: /* Home key */
stuffin("1G");
return -1;
--- 39,44 ----
***************
*** 186,194 ****
void
beep()
{
! in ( P(P_VB) )
vbeep();
else
outone('\007');
}
--- 184,194 ----
void
beep()
{
! #ifdef VBEEP /* doesn't seem to work, so just use bell ordinarily */
! if ( P(P_VB) )
vbeep();
else
+ #endif
outone('\007');
}
***************
*** 295,332 ****
if (f[i] == '/')
f[i] = '\\';
! /*
! * Split the name into directory, base, extension.
! */
! if ((p = strrchr(f, '\\')) != NULL) {
! strcpy(base, p+1);
! p[1] = '\0';
! } else {
! strcpy(base, f);
! f[0] = '\0';
! }
!
! if ((p = strchr(base, '.')) != NULL) {
! strcpy(ext, p+1);
! *p = '\0';
! } else
! ext[0] = '\0';
!
! /*
! * Trim the base name if necessary.
! */
! if (strlen(base) > 8)
! base[8] = '\0';
! if (strlen(ext) > 3)
! ext[3] = '\0';
!
! /*
! * Paste it all back together
! */
! strcat(f, base);
! strcat(f, ".");
! strcat(f, ext);
return f;
}
--- 295,334 ----
if (f[i] == '/')
f[i] = '\\';
! if (IsFileSystemFAT(f)) {
! /*
! * Split the name into directory, base, extension.
! */
! if ((p = strrchr(f, '\\')) != NULL) {
! strcpy(base, p+1);
! p[1] = '\0';
! } else {
! strcpy(base, f);
! f[0] = '\0';
! }
! if ((p = strchr(base, '.')) != NULL) {
! strcpy(ext, p+1);
! *p = '\0';
! } else
! ext[0] = '\0';
!
! /*
! * Trim the base name if necessary.
! */
! if (strlen(base) > 8)
! base[8] = '\0';
!
! if (strlen(ext) > 3)
! ext[3] = '\0';
!
! /*
! * Paste it all back together
! */
! strcat(f, base);
! strcat(f, ".");
! strcat(f, ext);
! }
return f;
}
***************
*** 362,368 ****
* windinit(), before you do any setcolor() commands, and
* do a setcolor() back to the original as part of windexit().
*/
! int c:
{
}
--- 364,370 ----
* windinit(), before you do any setcolor() commands, and
* do a setcolor() back to the original as part of windexit().
*/
! int c;
{
}
***************
*** 415,418 ****
/********** End of do-it-yourself kit **********************/
-
--- 417,419 ----
diff -cs ./ascii.h c:\stevie/ascii.h
*** ./ascii.h Wed May 02 00:19:42 1990
--- c:/stevie/ascii.h Sat Oct 27 00:27:32 1990
***************
*** 13,17 ****
#define CTRL(x) ((x) & 0x1f)
! #define MK_FP (seg,ofs) ((void far *) \
(((unsigned long)(seg) << 16) | (unsigned)(ofs)))
--- 13,17 ----
#define CTRL(x) ((x) & 0x1f)
! #define MK_FP(seg,ofs) ((void far *) \
(((unsigned long)(seg) << 16) | (unsigned)(ofs)))
diff -cs ./env.h c:\stevie/env.h
*** ./env.h Tue May 01 22:26:50 1990
--- c:/stevie/env.h Tue Oct 08 16:43:30 1991
***************
*** 11,24 ****
*/
/* #define ATARI /* For the Atari ST */
! #define UNIX /* System V or BSD */
/* #define OS2 /* Microsoft OS/2 1.1 */
/* #define DOS /* MSDOS 3.3 (on AT) */
/*
* If DOS is defined, then a number of other defines are possible:
*/
#ifdef DOS
! #define TURBOC /* Use Borland Turbo C. Otherwise, the code
* uses Microsoft C.
*/
/* #define BIOS /* Display uses the BIOS routines, rather than
--- 11,25 ----
*/
/* #define ATARI /* For the Atari ST */
! /* #define UNIX /* System V or BSD */
/* #define OS2 /* Microsoft OS/2 1.1 */
/* #define DOS /* MSDOS 3.3 (on AT) */
+
/*
* If DOS is defined, then a number of other defines are possible:
*/
#ifdef DOS
! /* #define TURBOC /* Use Borland Turbo C. Otherwise, the code
* uses Microsoft C.
*/
/* #define BIOS /* Display uses the BIOS routines, rather than
***************
*** 47,53 ****
* The yank buffer is still static, but its size can be specified
* here to override the default of 4K.
*/
! /* #define YBSIZE 8192 /* yank buffer size */
/*
* STRCSPN should be defined if the target system doesn't have the
--- 48,54 ----
* The yank buffer is still static, but its size can be specified
* here to override the default of 4K.
*/
! #define YBSIZE 8192 /* yank buffer size */
/*
* STRCSPN should be defined if the target system doesn't have the
***************
*** 54,65 ****
* routine strcspn() available. See regexp.c for details.
*/
! #ifdef ATARI
!
! #ifdef MINIX
! #define STRCSPN
! #endif
!
#endif
/*
--- 55,64 ----
* routine strcspn() available. See regexp.c for details.
*/
! #ifdef ATARI
! # ifdef MINIX
! # define STRCSPN
! # endif
#endif
/*
***************
*** 74,80 ****
* then enabled at runtime with the "tildeop" parameter.
*
* HELP
! * If defined, a series of help screens may be views with the ":help"
* command. This eats a fair amount of data space.
*
* TERMCAP
--- 73,79 ----
* then enabled at runtime with the "tildeop" parameter.
*
* HELP
! * If defined, a series of help screens may be viewed with the ":help"
* command. This eats a fair amount of data space.
*
* TERMCAP
***************
*** 96,100 ****
*/
#define TILDEOP /* enable tilde to be an operator */
#define HELP /* enable help command */
! #define TERMCAP /* enable termcap support */
#define TAGSTACK /* enable stacking calls to tags */
--- 95,99 ----
*/
#define TILDEOP /* enable tilde to be an operator */
#define HELP /* enable help command */
! /* #define TERMCAP /* enable termcap support */
#define TAGSTACK /* enable stacking calls to tags */
diff -cs ./stevie.h c:\stevie/stevie.h
*** ./stevie.h Tue May 01 22:22:48 1990
--- c:/stevie/stevie.h Tue Oct 08 16:20:58 1991
***************
*** 9,34 ****
#include <stdio.h>
#include <ctype.h>
! #ifdef BSD
!
! #include <strings.h>
! #define strchr index
!
! #else
!
! #ifdef MINIX
!
! extern char *strchr();
! extern char *strrchr();
! extern char *strcpy();
! extern char *strcat();
! extern int strlen();
!
! #else
! #include <string.h>
! #endif
!
! #endif
#include "ascii.h"
#include "keymap.h"
--- 9,28 ----
#include <stdio.h>
#include <ctype.h>
! #ifdef BSD
! # include <strings.h>
! # define strchr index
! #else /* !BSD */
! # ifdef MINIX
! extern char *strchr();
! extern char *strrchr();
! extern char *strcpy();
! extern char *strcat();
! extern int strlen();
! # else /* !MINIX */
! # include <string.h>
! # endif /* ?MINIX */
! #endif /* ?BSD */
#include "ascii.h"
#include "keymap.h"
diff -cs ./term.h c:\stevie/term.h
*** ./term.h Tue May 01 22:22:56 1990
--- c:/stevie/term.h Tue Oct 08 16:38:10 1991
***************
*** 3,23 ****
* System-dependent escape sequence definitions.
*/
! #ifdef TERMCAP
! extern char *T_EL; /* erase the entire current line */
! extern char *T_IL; /* insert one line */
! extern char *T_DL; /* delete one line */
! extern char *T_SC; /* save the cursor position */
! extern char *T_ED; /* erase display (may optionally home cursor) */
! extern char *T_RC; /* restore the cursor position */
! extern char *T_CI; /* invisible cursor (very optional) */
! extern char *T_CV; /* visible cursor (very optional) */
!
! extern char *T_CM; /* cursor motion string */
!
! #else
!
/*
* This file contains the machine dependent escape sequences that
* the editor needs to perform various operations. Some of the sequences
--- 3,20 ----
* System-dependent escape sequence definitions.
*/
! #ifdef TERMCAP
! extern char *T_EL; /* erase the entire current line */
! extern char *T_IL; /* insert one line */
! extern char *T_DL; /* delete one line */
! extern char *T_SC; /* save the cursor position */
! extern char *T_ED; /* erase display (may optionally home cursor) */
! extern char *T_RC; /* restore the cursor position */
! extern char *T_CI; /* invisible cursor (very optional) */
! extern char *T_CV; /* visible cursor (very optional) */
! extern char *T_CM; /* cursor motion string */
! #else /* !TERMCAP */
/*
* This file contains the machine dependent escape sequences that
* the editor needs to perform various operations. Some of the sequences
***************
*** 30,36 ****
* There are lots of terminals that have 'index' and 'reverse index'
* capabilities, but no line insert/delete. For this reason, the editor
* routines s_ins() and s_del() should be modified to use 'index'
! * sequences when the line to be inserted or deleted line zero.
*/
/*
--- 27,33 ----
* There are lots of terminals that have 'index' and 'reverse index'
* capabilities, but no line insert/delete. For this reason, the editor
* routines s_ins() and s_del() should be modified to use 'index'
! * sequences when the line to be inserted or deleted is line zero.
*/
/*
***************
*** 37,84 ****
* The macro names here correspond (more or less) to the actual ANSI names
*/
! #ifdef ATARI
! #ifdef MINIX
!
! #define T_EL "\033[2K" /* erase the entire current line */
! #define T_IL "\033[L" /* insert one line */
! #define T_DL "\033[M" /* delete one line */
! #define T_SC "\0337" /* save the cursor position */
! #define T_ED "\033[2J" /* erase display (may optionally home cursor) */
! #define T_RC "\0338" /* restore the cursor position */
! #define T_CI "" /* invisible cursor (very optional) */
! #define T_CV "" /* visible cursor (very optional) */
!
! #else
!
! #define T_EL "\033l" /* erase the entire current line */
! #define T_IL "\033L" /* insert one line */
! #define T_DL "\033M" /* delete one line */
! #define T_SC "\033j" /* save the cursor position */
! #define T_ED "\033E" /* erase display (may optionally home cursor) */
! #define T_RC "\033k" /* restore the cursor position */
! #define T_CI "\033f" /* invisible cursor (very optional) */
! #define T_CV "\033e" /* visible cursor (very optional) */
! #endif
! #endif
!
! #ifdef UNIX
/*
* The following sequences are hard-wired for ansi-like terminals. To get
* termcap support, define TERMCAP in env.h and these sequences go away.
*/
! #define T_EL "\033[2K" /* erase the entire current line */
! #define T_IL "\033[L" /* insert one line */
! #define T_DL "\033[M" /* delete one line */
! #define T_ED "\033[2J" /* erase display (may optionally home cursor) */
! #define T_SC "\0337" /* save the cursor position */
! #define T_RC "\0338" /* restore the cursor position */
! #define T_CI "" /* invisible cursor (very optional) */
! #define T_CV "" /* visible cursor (very optional) */
! #endif
! #ifdef OS2
/*
* The OS/2 ansi console driver is pretty deficient. No insert or delete line
* sequences. The erase line sequence only erases from the cursor to the end
--- 34,78 ----
* The macro names here correspond (more or less) to the actual ANSI names
*/
! # ifdef ATARI
! # ifdef MINIX
! # define T_EL "\033[2K" /* erase the entire current line */
! # define T_IL "\033[L" /* insert one line */
! # define T_DL "\033[M" /* delete one line */
! # define T_SC "\0337" /* save the cursor position */
! # define T_ED "\033[2J" /* erase display (option: home cursor) */
! # define T_RC "\0338" /* restore the cursor position */
! # define T_CI "" /* invisible cursor (very optional) */
! # define T_CV "" /* visible cursor (very optional) */
! # else /* !MINIX */
! # define T_EL "\033l" /* erase the entire current line */
! # define T_IL "\033L" /* insert one line */
! # define T_DL "\033M" /* delete one line */
! # define T_SC "\033j" /* save the cursor position */
! # define T_ED "\033E" /* erase display (may optionally home cursor) */
! # define T_RC "\033k" /* restore the cursor position */
! # define T_CI "\033f" /* invisible cursor (very optional) */
! # define T_CV "\033e" /* visible cursor (very optional) */
! # endif /* ?MINIX */
! # endif /* ATARI */
! # ifdef UNIX
/*
* The following sequences are hard-wired for ansi-like terminals. To get
* termcap support, define TERMCAP in env.h and these sequences go away.
*/
! # define T_EL "\033[2K" /* erase the entire current line */
! # define T_IL "\033[L" /* insert one line */
! # define T_DL "\033[M" /* delete one line */
! # define T_ED "\033[2J" /* erase display (may home cursor) */
! # define T_SC "\0337" /* save the cursor position */
! # define T_RC "\0338" /* restore the cursor position */
! # define T_CI "" /* invisible cursor (very optional) */
! # define T_CV "" /* visible cursor (very optional) */
! # endif /* UNIX */
!
! # ifdef OS2
/*
* The OS/2 ansi console driver is pretty deficient. No insert or delete line
* sequences. The erase line sequence only erases from the cursor to the end
***************
*** 90,107 ****
* available for the rest of the editor via appropriate escape sequences
* passed to outstr().
*/
! #define T_EL "\033[K" /* erase the entire current line */
! #define T_IL "\033[L" /* insert one line - fake (see os2.c) */
! #define T_DL "\033[M" /* delete one line - fake (see os2.c) */
! #define T_ED "\033[2J" /* erase display (may optionally home cursor) */
! #define T_SC "\033[s" /* save the cursor position */
! #define T_RC "\033[u" /* restore the cursor position */
! #define T_CI "" /* invisible cursor (very optional) */
! #define T_CV "" /* visible cursor (very optional) */
! #endif
! #ifdef DOS
/*
* DOS sequences
*
--- 84,101 ----
* available for the rest of the editor via appropriate escape sequences
* passed to outstr().
*/
! # define T_EL "\033[K" /* erase the entire current line */
! # define T_IL "\033[L" /* insert one line - fake (see os2.c) */
! # define T_DL "\033[M" /* delete one line - fake (see os2.c) */
! # define T_ED "\033[2J" /* erase display (may home cursor) */
! # define T_SC "\033[s" /* save the cursor position */
! # define T_RC "\033[u" /* restore the cursor position */
! # define T_CI "" /* invisible cursor (very optional) */
! # define T_CV "" /* visible cursor (very optional) */
! # endif /* OS2 */
! # ifdef DOS
/*
* DOS sequences
*
***************
*** 109,131 ****
* console driver. The standard "ansi.sys" driver doesn't support
* sequences for insert/delete line.
*/
! #define T_EL "\033[K" /* erase the entire current line */
! #define T_IL "\033[L" /* insert line (requires nansi.sys driver) */
! #define T_DL "\033[M" /* delete line (requires nansi.sys driver) */
! #define T_ED "\033[2J" /* erase display (may optionally home cursor) */
! #define T_SC "\033[s" /* save the cursor position */
! #define T_RC "\033[u" /* restore the cursor position */
! #define T_CI "" /* invisible cursor (very optional) */
! #define T_CV "" /* visible cursor (very optional) */
! #endif
! #endif
/*
* Machine-variant screen handling definitions.
*
* Define some macros which for invoking screen functions, whether by
! * callling a bios function or outputting an escape sequence to be
* interpreted by a PC console driver or terminal.
*
* At this writing, not all of Stevie has been converted to use these
--- 103,125 ----
* console driver. The standard "ansi.sys" driver doesn't support
* sequences for insert/delete line.
*/
! # define T_EL "\033[K" /* erase the entire current line */
! # define T_IL "\033[L" /* insert line (requires nansi.sys) */
! # define T_DL "\033[M" /* delete line (requires nansi.sys) */
! # define T_ED "\033[2J" /* erase display (may home cursor) */
! # define T_SC "\033[s" /* save the cursor position */
! # define T_RC "\033[u" /* restore the cursor position */
! # define T_CI "" /* invisible cursor (very optional) */
! # define T_CV "" /* visible cursor (very optional) */
! # endif /* DOS */
! #endif /* ?TERMCAP */
/*
* Machine-variant screen handling definitions.
*
* Define some macros which for invoking screen functions, whether by
! * calling a bios function or outputting an escape sequence to be
* interpreted by a PC console driver or terminal.
*
* At this writing, not all of Stevie has been converted to use these
***************
*** 137,177 ****
*/
#ifdef BIOS
!
! #define CANDL TRUE /* Can delete lines */
! #define CANIL TRUE /* Can insert lines */
! #define CLEOL bios_t_el() /* Erase to end-of-line */
! #define CLS bios_t_ed() /* Erase entire display */
! #define CRTDL(r,l) bios_t_dl(r,l) /* Delete lines from display */
! #define CRTIL(r,l) bios_t_il(r,l) /* Insert lines in display */
! #define CUROFF bios_t_ci() /* Make cursor invisible */
! #define CURON bios_t_cv() /* Make cursor visible */
! #define RESCUR bios_t_rc() /* Restore saved cursor position */
! #define SAVCUR bios_t_sc() /* Save cursor position */
!
! #else /* Not BIOS */
!
! #define CANDL (T_DL[0]!='\0') /* Determine if can delete lines */
! #define CANIL (T_IL[0]!='\0') /* Determine if can insert lines */
! #define CLEOL outstr(T_EL) /* Erase to end-of-line */
! #define CLS outstr(T_ED) /* Erase entire display */
! #define CRTDL(r,l) DO_DL(r,l) /* Delete lines from display */
! #define CRTIL(r,l) DO_IL(r,l) /* Insert lines in display */
! #define CUROFF outstr(T_CI) /* Make cursor invisible */
! #define CURON outstr(T_CV) /* Make cursor visible */
! #define RESCUR outstr(T_RC) /* Restore saved cursor position */
! #define SAVCUR outstr(T_SC) /* Save cursor position */
!
! #define DO_DL(r,l) {\
! int __xx_knt = l;\
! while (__xx_knt-- > 0) {outstr(T_DL);}\
! }
!
! #define DO_IL(r,l) {\
! int __xx_knt = l;\
! while (__xx_knt-- > 0) {outstr(T_IL);}\
! }
!
! #endif /* Not BIOS */
--- 131,159 ----
*/
#ifdef BIOS
! # define CANDL TRUE /* Can delete lines */
! # define CANIL TRUE /* Can insert lines */
! # define CLEOL bios_t_el() /* Erase to end-of-line */
! # define CLS bios_t_ed() /* Erase entire display */
! # define CRTDL(r,l) bios_t_dl(r,l) /* Delete lines from display */
! # define CRTIL(r,l) bios_t_il(r,l) /* Insert lines in display */
! # define CUROFF bios_t_ci() /* Make cursor invisible */
! # define CURON bios_t_cv() /* Make cursor visible */
! # define RESCUR bios_t_rc() /* Restore saved cursor pos. */
! # define SAVCUR bios_t_sc() /* Save cursor position */
! #else /* !BIOS */
! # define CANDL (T_DL[0]!='\0') /* see if can delete lines */
! # define CANIL (T_IL[0]!='\0') /* see if can insert lines */
! # define CLEOL outstr(T_EL) /* Erase to end-of-line */
! # define CLS outstr(T_ED) /* Erase entire display */
! # define CRTDL(r,l) DO_DL(r,l) /* Delete lines from display */
! # define CRTIL(r,l) DO_IL(r,l) /* Insert lines in display */
! # define CUROFF outstr(T_CI) /* Make cursor invisible */
! # define CURON outstr(T_CV) /* Make cursor visible */
! # define RESCUR outstr(T_RC) /* Restore saved cursor pos. */
! # define SAVCUR outstr(T_SC) /* Save cursor position */
! # define DO_DL(r,l) {int __xx_knt = l; while (__xx_knt-- > 0) {outstr(T_DL);} }
! # define DO_IL(r,l) {int __xx_knt = l; while (__xx_knt-- > 0) {outstr(T_IL);} }
! #endif /* ?BIOS */
diff -cs ./version.c c:\stevie/version.c
*** ./version.c Tue May 01 22:45:38 1990
--- c:/stevie/version.c Tue Oct 08 20:59:32 1991
***************
*** 6,11 ****
--- 6,24 ----
*
* $Log: version.c,v $
*
+ * Revision 3.69grr 91/10/08 Greg Roelofs
+ * - Fixed several errors (typos) in os2.c.
+ * - Created new OS/2 makefile for use with MSC's NMAKE; fixed
+ * some errors (notably, lack of regexp and regsub).
+ * - Added a module definition file and incorporated Kai Uwe Rommel's
+ * IsFileSystemFAT() code into os2.c to allow for HPFS long filenames.
+ * - ifdef'd out the vbeep code, since it doesn't seem to do anything
+ * under OS/2's ANSI driver (OS/2 1.30.1).
+ *
+ * Revision 3.69b 90/?/? David Kirschbaum
+ * (May have done something prior to compiling under Turbo C and
+ * uploading to Simtel archives. May not have, too. :-) -GRR)
+ *
* Revision 3.69a 90/02/04 dave
* A couple of minor bugfixes, and a whole load of enhancements:
* - Added tag-stacking.
***************
*** 302,305 ****
*
*/
! char *Version = "STEVIE - Version 3.69a";
--- 315,318 ----
*
*/
! char *Version = "STEVIE - Version 3.69grr";