home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 9 Archive
/
09-Archive.zip
/
PAX20.ZIP
/
PATCHES.OS2
< prev
next >
Wrap
Text File
|
1990-11-12
|
23KB
|
832 lines
diff -cbBw orig/buffer.c ./buffer.c
*** orig/buffer.c Tue Jan 16 19:23:22 1990
--- ./buffer.c Sat Dec 30 15:48:42 1989
***************
*** 673,679 ****
bufend += got;
} else if (got < 0) {
failed = -1;
! warnarch(strerror(), (OFFSET) 0 - (bufend - bufidx));
} else {
++areof;
}
--- 673,679 ----
bufend += got;
} else if (got < 0) {
failed = -1;
! warnarch(strerror(), (OFFSET) 0L - (OFFSET) (bufend - bufidx));
} else {
++areof;
}
diff -cbBw orig/cpio.c ./cpio.c
*** orig/cpio.c Tue Jan 16 19:23:22 1990
--- ./cpio.c Tue Jan 16 18:19:14 1990
***************
*** 244,251 ****
--- 244,267 ----
#endif
{
DBUG_ENTER("usage");
+ #ifdef MSDOS
+ printf("\r\nPAX version 2.0 - POSIX conforming tar and cpio archiver for DOS and OS/2\r\n");
+
+ printf("\r\nUsage: %s -o[Bacv]\r\n", myname);
+ printf(" %s -i[Bcdmrtuvf] [pattern...]\r\n", myname);
+ printf(" %s -p[adlmruv] directory\r\n", myname);
+
+ printf("\r\nUse the nonstandard option \"-D file\" for files as input/output archives."
+ "\r\nRename CPIO.EXE to PAX.EXE or TAR.EXE to get the PAX or TAR user interface.\r\n");
+
+ #ifdef DISKACC
+ printf("\r\nUse the option -D with the special device names 0: and 1: to access Unix floppy"
+ "\r\ndisks with cpio archives. The disk type is automatically detected.\r\n");
+ #endif
+ #else
fprintf(stderr, "Usage: %s -o[Bacv]\n", myname);
fprintf(stderr, " %s -i[Bcdmrtuvf] [pattern...]\n", myname);
fprintf(stderr, " %s -p[adlmruv] directory\n", myname);
+ #endif
exit(1);
}
diff -cbBw orig/fileio.c ./fileio.c
*** orig/fileio.c Tue Jan 16 19:23:24 1990
--- ./fileio.c Sat Dec 30 18:07:00 1989
***************
*** 99,110 ****
bufend = bufidx = bufstart; /* set up for initial read */
}
! #ifndef MSDOS
! if (archivefd < 0) {
! warnarch(strerror(), (OFFSET) 0);
! DBUG_RETURN(-1);
! }
! #else /* MSDOS */
if (dio_open_check(ar_file) < 0) {
if (archivefd >= 0) {
warnarch(strerror(), (OFFSET) 0);
--- 99,105 ----
bufend = bufidx = bufstart; /* set up for initial read */
}
! #if defined(MSDOS) && defined(DIO)
if (dio_open_check(ar_file) < 0) {
if (archivefd >= 0) {
warnarch(strerror(), (OFFSET) 0);
***************
*** 119,124 ****
--- 114,124 ----
if (dio_to_binary(archivefd) < 0) {
DBUG_RETURN(-1);
}
+ #else
+ if (archivefd < 0) {
+ warnarch(strerror(), (OFFSET) 0);
+ DBUG_RETURN(-1);
+ }
#endif /* MSDOS */
++arvolume;
***************
*** 256,261 ****
--- 256,262 ----
perm = asb->sb_mode & S_IPERM;
switch (asb->sb_mode & S_IFMT) {
+ #ifndef MSDOS
#ifdef S_IFBLK
case S_IFBLK:
#endif /* S_IFBLK */
***************
*** 296,301 ****
--- 297,303 ----
DBUG_RETURN(0);
break;
#endif /* S_IFCHR */
+ #endif
case S_IFDIR:
if (exists) {
diff -cbBw orig/func.h ./func.h
*** orig/func.h Tue Jan 16 19:23:24 1990
--- ./func.h Sat Dec 30 19:46:32 1989
***************
*** 79,91 ****
struct group *getgrgid();
struct group *getgrnam();
struct passwd *getpwuid();
! char *getenv(char *);
Link *islink(char *, Stat *);
char *finduname(UIDTYPE);
char *findgname(GIDTYPE);
GIDTYPE findgid(char *);
UIDTYPE finduid(char *);
! char *malloc();
char *index(char *, char);
char *rindex(char *, char);
--- 79,91 ----
struct group *getgrgid();
struct group *getgrnam();
struct passwd *getpwuid();
! char *getenv(const char *);
Link *islink(char *, Stat *);
char *finduname(UIDTYPE);
char *findgname(GIDTYPE);
GIDTYPE findgid(char *);
UIDTYPE finduid(char *);
! void *malloc();
char *index(char *, char);
char *rindex(char *, char);
***************
*** 99,105 ****
int (*signal()) ();
#endif /* VOIDSIG */
! #ifdef MSDOS
extern int dio_write(int drive,char *from_buf,unsigned int from_cnt);
extern int dio_read(int drive,char *to_buf,unsigned int to_cnt);
extern int dio_open_check(char *s);
--- 99,105 ----
int (*signal()) ();
#endif /* VOIDSIG */
! #if defined(MSDOS) && defined(DIO)
extern int dio_write(int drive,char *from_buf,unsigned int from_cnt);
extern int dio_read(int drive,char *to_buf,unsigned int to_cnt);
extern int dio_open_check(char *s);
***************
*** 110,115 ****
--- 110,123 ----
extern void dio_str(char *s);
#endif /* MSDOS */
+ #if defined(MSDOS) && defined(DISKACC)
+ int dsk_open (char *path, int oflag, int mode);
+ int dsk_close(int fildes);
+ int dsk_read(int fildes, char *buf, unsigned nbyte);
+ int dsk_write(int fildes, char *buf, unsigned nbyte);
+ long dsk_lseek(int fildes, long offset, int whence);
+ #endif /* MSDOS */
+
#else /* !__STDC__ */
extern Link *linkfrom();
***************
*** 181,187 ****
extern int (*signal()) ();
#endif
! #ifdef MSDOS
extern int dio_write();
extern int dio_read();
extern int dio_open_check();
--- 189,195 ----
extern int (*signal()) ();
#endif
! #if defined(MSDOS) && defined(DIO)
extern int dio_write();
extern int dio_read();
extern int dio_open_check();
***************
*** 192,197 ****
--- 200,213 ----
extern void dio_str();
#endif /* MSDOS */
+ #if defined(MSDOS) && defined(DISKACC)
+ int dsk_open ();
+ int dsk_close();
+ int dsk_read();
+ int dsk_write();
+ long dsk_lseek();
+ #endif /* MSDOS */
+
#ifndef /* STRTOK */
extern char *strtok();
#endif /* STRTOK */
diff -cbBw orig/limits.h ./limits.h
*** orig/limits.h Tue Jan 16 19:23:24 1990
--- ./limits.h Sat Dec 30 22:52:48 1989
***************
*** 51,57 ****
#ifndef NAME_MAX
/* This should be 32 for BSD systems */
! #define NAME_MAX 14 /* Max number of bytes in a filename */
#endif /* NAME_MAX */
#endif /* _PAX_LIMITS_H */
--- 51,57 ----
#ifndef NAME_MAX
/* This should be 32 for BSD systems */
! #define NAME_MAX 32 /* Max number of bytes in a filename */
#endif /* NAME_MAX */
#endif /* _PAX_LIMITS_H */
diff -cbBw orig/list.c ./list.c
*** orig/list.c Tue Jan 16 19:23:24 1990
--- ./list.c Sat Dec 30 20:13:30 1989
***************
*** 462,468 ****
if (f_verbose) {
atm = localtime(&asb->sb_mtime);
pr_mode(asb->sb_mode);
! fprintf(msgfile, " %d/%d %6ld %3s %2d %02d:%02d %4d %s",
asb->sb_uid, asb->sb_gid, asb->sb_size,
monnames[atm->tm_mon], atm->tm_mday, atm->tm_hour,
atm->tm_min, atm->tm_year + 1900, name);
--- 462,468 ----
if (f_verbose) {
atm = localtime(&asb->sb_mtime);
pr_mode(asb->sb_mode);
! fprintf(msgfile, " %3d/%-3d %6ld %3s %2d %02d:%02d %4d %s",
asb->sb_uid, asb->sb_gid, asb->sb_size,
monnames[atm->tm_mon], atm->tm_mday, atm->tm_hour,
atm->tm_min, atm->tm_year + 1900, name);
***************
*** 538,543 ****
--- 538,544 ----
pr_mode(asb->sb_mode);
fprintf(msgfile, " %3d", asb->sb_nlink);
atm = localtime(&asb->sb_mtime);
+ #ifndef MSDOS
if (pwp = getpwuid((UIDTYPE) USH(asb->sb_uid))) {
fprintf(msgfile, " %-8s", pwp->pw_name);
} else {
***************
*** 548,553 ****
--- 549,555 ----
} else {
fprintf(msgfile, " %-8u", USH(asb->sb_gid));
}
+ #endif
switch (asb->sb_mode & S_IFMT) {
#ifdef S_IFBLK
diff -cbBw orig/msdos.c ./msdos.c
*** orig/msdos.c Tue Jan 16 19:23:26 1990
--- ./msdos.c Sat Dec 30 18:09:18 1989
***************
*** 57,72 ****
/* Headers */
#include "pax.h"
#ifdef MSDOS
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
- #include <string.h>
#include <errno.h>
#include <dos.h>
/* Function Prototypes */
#ifdef __STDC__
--- 57,74 ----
/* Headers */
#include "pax.h"
+
#ifdef MSDOS
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <errno.h>
#include <dos.h>
+ #ifdef DIO
+
/* Function Prototypes */
#ifdef __STDC__
***************
*** 108,114 ****
static union REGS reg;
static union REGS rreg;
! #ifdef M_I86LM
static struct SREGS sreg;
#endif /* !M_I86LM */
--- 110,116 ----
static union REGS reg;
static union REGS rreg;
! #if defined(M_I86LM) || defined(M_I86CM)
static struct SREGS sreg;
#endif /* !M_I86LM */
***************
*** 142,148 ****
reg.x.ax = drive;
reg.x.dx = secnum;
reg.x.cx = secknt;
! #ifdef M_I86LM
reg.x.bx = FP_OFF(buf);
sreg.ds = FP_SEG(buf);
int86x(0x26, ®, &rreg, &sreg);
--- 144,150 ----
reg.x.ax = drive;
reg.x.dx = secnum;
reg.x.cx = secknt;
! #if defined(M_I86LM) || defined(M_I86CM)
reg.x.bx = FP_OFF(buf);
sreg.ds = FP_SEG(buf);
int86x(0x26, ®, &rreg, &sreg);
***************
*** 165,171 ****
unsigned int secnum;
unsigned int secknt;
unsigned int *err;
! unsigned int *buf;
{
DBUG_ENTER("dio_adr");
rwsec = secnum;
--- 167,173 ----
unsigned int secnum;
unsigned int secknt;
unsigned int *err;
! char *buf;
{
DBUG_ENTER("dio_adr");
rwsec = secnum;
***************
*** 172,178 ****
reg.x.ax = drive;
reg.x.dx = secnum;
reg.x.cx = secknt;
! #ifdef M_I86LM
reg.x.bx = FP_OFF(buf);
sreg.ds = FP_SEG(buf);
int86x(0x25, ®, &rreg, &sreg);
--- 174,180 ----
reg.x.ax = drive;
reg.x.dx = secnum;
reg.x.cx = secknt;
! #if defined(M_I86LM) || defined(M_I86CM)
reg.x.bx = FP_OFF(buf);
sreg.ds = FP_SEG(buf);
int86x(0x25, ®, &rreg, &sreg);
***************
*** 344,350 ****
* written */
unsigned int from_cnt; /* number of bytes to write */
{
! unsigned int amt:
unsigned int err;
unsigned int nn;
unsigned int fquo;
--- 346,352 ----
* written */
unsigned int from_cnt; /* number of bytes to write */
{
! unsigned int amt;
unsigned int err;
unsigned int nn;
unsigned int fquo;
***************
*** 637,642 ****
--- 639,645 ----
DBUG_RETURN (fptr);
}
+ #endif
static struct passwd npwd = {"", "", 0, 0, 0, "", "", "", ""};
static char gmem1[] = "";
diff -cbBw orig/namelist.c ./namelist.c
*** orig/namelist.c Tue Jan 16 19:23:26 1990
--- ./namelist.c Sat Dec 30 18:07:22 1989
***************
*** 126,132 ****
DBUG_ENTER("add_name");
! #ifdef MSDOS
dio_str(name);
#endif /* MSDOS */
--- 126,132 ----
DBUG_ENTER("add_name");
! #if defined(MSDOS) && defined(DIO)
dio_str(name);
#endif /* MSDOS */
***************
*** 432,438 ****
}
} while (err < 0);
! #ifdef MSDOS
dio_str(name);
#endif /* MSDOS */
--- 432,438 ----
}
} while (err < 0);
! #if defined(MSDOS) && defined(DIO)
dio_str(name);
#endif /* MSDOS */
diff -cbBw orig/pass.c ./pass.c
*** orig/pass.c Tue Jan 16 19:23:26 1990
--- ./pass.c Sat Dec 30 16:09:30 1989
***************
*** 141,147 ****
char to[PATH_MAX + 1];
DBUG_ENTER("passitem");
! if (nameopt(strcat(strcat(strcpy(to, dir), "/"), from)) < 0) {
DBUG_RETURN(-1);
}
if (asb->sb_nlink > 1) {
--- 141,151 ----
char to[PATH_MAX + 1];
DBUG_ENTER("passitem");
! strcpy(to, dir);
! strcat(to, "/");
! strcat(to, from);
!
! if (nameopt(to) < 0) {
DBUG_RETURN(-1);
}
if (asb->sb_nlink > 1) {
diff -cbBw orig/pax.c ./pax.c
*** orig/pax.c Tue Jan 16 19:23:26 1990
--- ./pax.c Tue Jan 16 18:19:46 1990
***************
*** 162,168 ****
{
#ifdef MSDOS
char *tmp;
- extern int _fmode;
#endif /* MSDOS */
DBUG_ENTER("main");
--- 162,167 ----
***************
*** 173,179 ****
--- 172,180 ----
setmode(fileno(stdin), O_BINARY);
setmode(fileno(stdout), O_BINARY);
/* strip the pathname off of the name of the executable */
+ #ifdef DIO
dio_str(argv[0]);
+ #endif
if ((myname = strrchr(argv[0], '/')) != (char *)NULL) {
myname++;
} else if ((myname = strrchr(argv[0], '\\')) != (char *)NULL) {
***************
*** 181,187 ****
} else {
myname = argv[0];
}
! if ((tmp = strrchr(myname, '.')) != (char *) NULL)
*tmp = '\0';
}
#else /* !MSDOS */
--- 182,188 ----
} else {
myname = argv[0];
}
! if ((tmp = strrchr(myname, '.')) != (char *) NULL) {
*tmp = '\0';
}
#else /* !MSDOS */
***************
*** 205,214 ****
/* open terminal for interactive queries */
ttyf = open_tty();
! if (strcmp(myname, "tar") == 0) {
tar_interface = 1;
do_tar(argc, argv);
! } else if (strcmp(myname, "cpio") == 0) {
cpio_interface = 1;
do_cpio(argc, argv);
} else {
--- 206,215 ----
/* open terminal for interactive queries */
ttyf = open_tty();
! if (stricmp(myname, "tar") == 0) {
tar_interface = 1;
do_tar(argc, argv);
! } else if (stricmp(myname, "cpio") == 0) {
cpio_interface = 1;
do_cpio(argc, argv);
} else {
***************
*** 375,383 ****
break;
case 'x':
! if (strcmp(optarg, "ustar") == 0) {
ar_format = TAR;
! } else if (strcmp(optarg, "cpio") == 0) {
ar_format = CPIO;
} else {
usage();
--- 376,384 ----
break;
case 'x':
! if (stricmp(optarg, "ustar") == 0) {
ar_format = TAR;
! } else if (stricmp(optarg, "cpio") == 0) {
ar_format = CPIO;
} else {
usage();
***************
*** 393,398 ****
--- 394,404 ----
}
}
+ if ( strcmp(ar_file, "-") == 0
+ && isatty(fileno(stdin))
+ && isatty(fileno(stdout)) )
+ usage();
+
#ifdef MSDOS
setmode(fileno(msgfile), O_TEXT);
#endif /* MSDOS */
***************
*** 622,634 ****
#endif
{
DBUG_ENTER("usage");
fprintf(stderr, "Usage: %s -[cimopuvy] [-f archive] [-s replstr] [-t device] [pattern...]\n",
myname);
fprintf(stderr, " %s -r [-cimopuvy] [-f archive] [-s replstr] [-t device] [pattern...]\n",
myname);
! fprintf(stderr, " %s -w [-adimuvy] [-b blocking] [-f archive] [-s replstr]\n [-t device] [-x format] [pathname...]\n",
myname);
fprintf(stderr, " %s -r -w [-ilmopuvy] [-s replstr] [pathname...] directory\n",
myname);
exit(1);
}
--- 628,658 ----
#endif
{
DBUG_ENTER("usage");
+ #ifdef MSDOS
+ printf("\r\nPAX version 2.0 - POSIX conforming tar and cpio archiver for DOS and OS/2\r\n");
+
+ printf("\r\nUsage: %s -[cimopuvy] [-f archive] [-s replstr] [-t device] [pattern...]\r\n", myname);
+ printf(" %s -r [-cimopuvy] [-f archive] [-s replstr] [-t device] [pattern...]\r\n", myname);
+ printf(" %s -w [-adimuvy] [-b blocking] [-f archive] [-s replstr]\r\n"
+ " [-t device] [-x format] [pathname...]\r\n", myname);
+ printf(" %s -r -w [-ilmopuvy] [-s replstr] [pathname...] directory\r\n", myname);
+
+ printf("\r\nRename PAX.EXE to TAR.EXE or CPIO.EXE to get the TAR or CPIO user interface.\r\n");
+
+ #ifdef DISKACC
+ printf("\r\nUse the option -t with the special device names 0: and 1: to access Unix floppy"
+ "\r\ndisks with tar or cpio archives. The disk type is automatically detected.\r\n");
+ #endif
+ #else
fprintf(stderr, "Usage: %s -[cimopuvy] [-f archive] [-s replstr] [-t device] [pattern...]\n",
myname);
fprintf(stderr, " %s -r [-cimopuvy] [-f archive] [-s replstr] [-t device] [pattern...]\n",
myname);
! fprintf(stderr, " %s -w [-adimuvy] [-b blocking] [-f archive] [-s replstr]\n"
! " [-t device] [-x format] [pathname...]\n",
myname);
fprintf(stderr, " %s -r -w [-ilmopuvy] [-s replstr] [pathname...] directory\n",
myname);
+ #endif
exit(1);
}
diff -cbBw orig/pax.h ./pax.h
*** orig/pax.h Tue Jan 16 19:23:26 1990
--- ./pax.h Sat Dec 30 18:57:48 1989
***************
*** 43,58 ****
#include <sys/stat.h>
#include "regexp.h"
#include "dbug.h"
#ifdef __STDC_
# include <string.h>
# include <strlib.h>
#endif /* __STDC__ */
! #ifdef MSDOS
# include <sys/ioctl.h>
#endif /* MSDOS */
#define DEF_TAR_FILE "/dev/rmt0"
#define TTY "/dev/tty"
#ifdef IOCTL
# include <sys/ioctl.h>
--- 43,65 ----
#include <sys/stat.h>
#include "regexp.h"
#include "dbug.h"
+
#ifdef __STDC_
# include <string.h>
# include <strlib.h>
#endif /* __STDC__ */
!
! /* #ifdef MSDOS
# include <sys/ioctl.h>
#endif /* MSDOS */
+ #ifdef MSDOS
+ #define DEF_TAR_FILE "archive.pax"
+ #define TTY "con"
+ #else
#define DEF_TAR_FILE "/dev/rmt0"
#define TTY "/dev/tty"
+ #endif
#ifdef IOCTL
# include <sys/ioctl.h>
***************
*** 78,84 ****
--- 85,93 ----
#endif /* MSDOS */
#ifndef XENIX_286
+ #ifndef MSDOS
# include <sys/file.h>
+ #endif
#endif /* XENIX_286 */
/* Defines */
***************
*** 347,354 ****
--- 356,368 ----
extern char *optarg;
extern int optind;
+
+ #ifdef MSDOS
+ #include <stdlib.h>
+ #else
extern int sys_nerr;
extern char *sys_errlist[];
extern int errno;
+ #endif
#endif /* _PAX_H */
diff -cbBw orig/port.h ./port.h
*** orig/port.h Tue Jan 16 19:23:26 1990
--- ./port.h Sat Dec 30 20:28:26 1989
***************
*** 78,83 ****
--- 78,85 ----
#ifdef MSDOS
+ #if defined(DIO)
+
#define OPEN2(p,f) \
( (dio_open_check(p) < 0) ? dio_open2(p,f) : open(p,f) )
#define OPEN3(p,f,m) \
***************
*** 91,98 ****
#define LSEEK(h,o,r) \
( (h < 0) ? dio_lseek(h,o,r) : lseek(h,o,r) )
! #else /* !MSDOS */
#define OPEN2(p,f) open(p,f)
#define OPEN3(p,f,m) open(p,f,m)
#define CLOSE(h) close(h)
--- 93,114 ----
#define LSEEK(h,o,r) \
( (h < 0) ? dio_lseek(h,o,r) : lseek(h,o,r) )
! #elif defined(DISKACC)
!
! #define _DSKBIAS 128
!
! #define dskdev(path) ((path[1] == ':' && path[2] == 0))
! #define isdsk(fd) ((fd) >= _DSKBIAS)
!
! #define OPEN2(path,oflag) (dskdev(path) ? dsk_open(path, oflag, 0) + _DSKBIAS : open(path, oflag))
! #define OPEN3(path,oflag,mode) (dskdev(path) ? dsk_open(path, oflag, mode) + _DSKBIAS : open(path, oflag, mode))
! #define READ(fd, buf, n) (isdsk(fd) ? dsk_read(fd - _DSKBIAS, buf, n) : read(fd, buf, n))
! #define WRITE(fd, buf, n) (isdsk(fd) ? dsk_write(fd - _DSKBIAS, buf, n) : write(fd, buf, n))
! #define LSEEK(fd, off, wh) (isdsk(fd) ? dsk_lseek(fd - _DSKBIAS, off, wh) : lseek(fd, off, wh))
! #define CLOSE(fd) (isdsk(fd) ? dsk_close(fd - _DSKBIAS) : close(fd))
+ #else
+
#define OPEN2(p,f) open(p,f)
#define OPEN3(p,f,m) open(p,f,m)
#define CLOSE(h) close(h)
***************
*** 100,104 ****
--- 116,124 ----
#define WRITE(h,b,c) write(h,b,c)
#define LSEEK(h,o,r) lseek(h,o,r)
+ #endif
+
#endif /* MSDOS */
#endif /* _PAX_PORT_H */
+
+
diff -cbBw orig/tar.c ./tar.c
*** orig/tar.c Tue Jan 16 19:23:28 1990
--- ./tar.c Tue Jan 16 18:19:20 1990
***************
*** 195,203 ****
--- 195,209 ----
/* check command line argument sanity */
if (f_create + f_extract + f_list + f_append + f_newer != 1) {
+ #ifdef MSDOS
+ printf(
+ "\r\n%s: you must specify exactly one of the c, t, r, u or x options\r\n",
+ myname);
+ #else
(void) fprintf(stderr,
"%s: you must specify exactly one of the c, t, r, u or x options\n",
myname);
+ #endif
usage();
exit(EX_ARGSBAD);
}
***************
*** 347,356 ****
--- 353,379 ----
#endif
{
DBUG_ENTER("usage");
+ #ifdef MSDOS
+ printf("\r\nPAX version 2.0 - POSIX conforming tar and cpio archiver for DOS and OS/2\r\n");
+
+ printf("\r\nUsage: %s -c[bfvw] device block filename..\r\n", myname);
+ printf(" %s -r[bvw] device block [filename...]\r\n", myname);
+ printf(" %s -t[vf] device\r\n", myname);
+ printf(" %s -u[bvw] device block [filename...]\r\n", myname);
+ printf(" %s -x[flmovw] device [filename...]\r\n", myname);
+
+ printf("\r\nRename TAR.EXE to PAX.EXE or CPIO.EXE to get the PAX or CPIO user interface.\r\n");
+
+ #ifdef DISKACC
+ printf("\r\nUse the option f with the special device names 0: and 1: to access Unix floppy"
+ "\r\ndisks with tar archives. The disk type is automatically detected.\r\n");
+ #endif
+ #else
fprintf(stderr, "Usage: %s -c[bfvw] device block filename..\n", myname);
fprintf(stderr, " %s -r[bvw] device block [filename...]\n", myname);
fprintf(stderr, " %s -t[vf] device\n", myname);
fprintf(stderr, " %s -u[bvw] device block [filename...]\n", myname);
fprintf(stderr, " %s -x[flmovw] device [filename...]\n", myname);
+ #endif
exit(1);
}
diff -cbBw orig/ttyio.c ./ttyio.c
*** orig/ttyio.c Tue Jan 16 19:23:28 1990
--- ./ttyio.c Sat Dec 30 19:05:54 1989
***************
*** 170,175 ****
--- 170,176 ----
answer[idx++] = c;
}
}
+ write(ttyf, "\r\n", 2);
if (got == 0) { /* got an EOF */
DBUG_RETURN(-1);
}
***************
*** 270,279 ****
myname, arvolume + 1, myname);
for (;;) {
ret = nextask(msg, answer, sizeof(answer));
! if (ret == -1 || strcmp(answer, "quit") == 0) {
fatal("Aborted");
}
! if (strcmp(answer, "go") == 0 && open_archive(mode) == 0) {
break;
}
}
--- 271,280 ----
myname, arvolume + 1, myname);
for (;;) {
ret = nextask(msg, answer, sizeof(answer));
! if (ret == -1 || stricmp(answer, "quit") == 0) {
fatal("Aborted");
}
! if (stricmp(answer, "go") == 0 && open_archive(mode) == 0) {
break;
}
}