Dec 192017
 
Source code for Gtak tar tape backup program.
File GTAK201S.ZIP from The Programmer’s Corner in
Category C Source Code
Source code for Gtak tar tape backup program.
File Name File Size Zip Size Zip Type
1.10 0 0 stored
AK_DIR.C 5669 2090 deflated
AK_TAPE.C 6602 2216 deflated
BACKUP.SPC 1628 794 deflated
BUFFER.C 37721 11530 deflated
CHANGE.LOG 32455 11706 deflated
CHANGES.AK 2733 1282 deflated
COPYING 12737 4815 deflated
CREATE.C 38547 12293 deflated
DIFFARCH.C 22789 6560 deflated
EXTRACT.C 26621 8158 deflated
GETDATE.Y 22458 5968 deflated
GETOLDOP.C 3045 1320 deflated
GETOPT.C 20398 6234 deflated
GETOPT.H 4611 1751 deflated
GETOPT1.C 4476 1599 deflated
GNU.C 14816 4749 deflated
LEVEL-0 4440 1544 deflated
LEVEL-1 4853 1581 deflated
LIST.C 20154 6605 deflated
MAKEFILE 9943 3425 deflated
MAKEFILE.AIX 10016 3456 deflated
MAKEFILE.OS2 10359 3532 deflated
MANGLE.C 7154 2199 deflated
MSD_DIR.C 5237 1770 deflated
MSD_DIR.H 1771 755 deflated
NAMES.C 4104 1589 deflated
OPEN3.H 3448 1551 deflated
PORT.C 33203 10661 deflated
PORT.H 3049 1390 deflated
README 1767 930 deflated
REGEX.C 87332 22272 deflated
REGEX.H 10506 3416 deflated
RMT.H 3996 1399 deflated
RTAPE_LB.C 13861 4853 deflated
RTAPE_SV.C 6562 2390 deflated
TAR.C 38577 11922 deflated
TAR.DEF 522 212 deflated
TAR.H 11260 4328 deflated
TESTPAD.C 2192 947 deflated
TESTPAD.H 17 17 stored
UPDATE.C 14656 4601 deflated
VERSION.C 2109 905 deflated
WILDMAT.C 5146 2308 deflated
BUFFER 0 0 stored
BUFFER.C 5191 1920 deflated
BUFFER.DEF 69 69 stored
GETOPT.C 2467 1117 deflated
MAKE.CMD 67 56 deflated
COMPRESS 0 0 stored
COMPRESS.C 32415 10819 deflated
COMPRESS.DEF 87 87 stored
COMPRESS.MAN 6385 2278 deflated
ISVALID.C 515 306 deflated
MAKE.CMD 86 66 deflated
README 2154 1082 deflated
LIBX 0 0 stored
DOSNAME.C 5016 1660 deflated
INHERIT.C 646 265 deflated
OS2EATTR.H 4858 1660 deflated
OS2EA_LD.C 7020 2086 deflated
ZTC.H 565 210 deflated
OS2-ADD 0 0 stored
ADDTAPE.H 1814 807 deflated
HEADER.ASM 596 236 deflated
INIT.C 8332 2600 deflated
IORB.H 28141 5256 deflated
MAIN.C 15544 3755 deflated
MAKEFILE.MK 1710 689 deflated
MAKEFILE.MSC 599 338 deflated
README 1839 1001 deflated
SCSITAPE.DEF 532 187 deflated
OS2-DD 0 0 stored
D2DEBUG.C 1938 777 deflated
DD-HEAD.INC 1808 793 deflated
DD-SEGS.INC 2214 523 deflated
DD.H 10599 3157 deflated
DDEBUG.C 2327 971 deflated
DD_DEFS.H 883 332 deflated
DEF_BASE.C 490 199 deflated
DEF_CLOS.C 726 296 deflated
DEF_IFL.C 724 293 deflated
DEF_INIT.C 731 296 deflated
DEF_IOC.C 724 296 deflated
DEF_IST.C 725 293 deflated
DEF_OFL.C 726 296 deflated
DEF_OPEN.C 726 295 deflated
DEF_OST.C 726 294 deflated
DEF_PEEK.C 726 294 deflated
DEF_READ.C 726 293 deflated
DEF_WRT.C 733 299 deflated
DEMO.DEF 24 24 stored
LOWLEVEL.ASM 16843 4534 deflated
MACROS.INC 1576 532 deflated
MAKEFILE.MK 1843 741 deflated
MAKEFILE.MSC 693 361 deflated
README 3907 1912 deflated
STRATEGY.C 3135 800 deflated
README.ABS 1250 604 deflated
README.AIX 1143 636 deflated
README.OS2 23364 8659 deflated
README.SRC 936 492 deflated
TAPE 0 0 stored
ASPI.H 4729 1519 deflated
ERRTAB.C 9236 2968 deflated
MAKEFILE 836 314 deflated
MAKEFILE.MK 2017 795 deflated
MAKEFILE.OS2 1246 505 deflated
SCSI-AIX.C 6375 1971 deflated
SCSI.H 7636 2422 deflated
SCSIASPI.C 7701 2442 deflated
SCSITAPE.C 12901 3694 deflated
SCSITAPE.H 2966 958 deflated
TAPE.C 12734 2871 deflated
TAPE.DEF 76 76 stored
TAPE.H 3236 984 deflated
TAPEDRVR.H 3053 1008 deflated
TCTL.C 24786 6948 deflated
TAR.TEX 56071 17033 deflated

Download File GTAK201S.ZIP Here

Contents of the README file


This GNU tar 1.10. Please send bug reports, etc., to
[email protected]

This is GNU tar. It is based heavily on John Gilmore's public domain
tar, but with added features. The manual is currently being written.
An old manual, surely riddled with errors, is in tar.texinfo. Please
don't send in bug reports about that manual. In particular, the
mechanism for doing incremental dumps has been significantly changed.

The mt program is in the GNU cpio distribution.

Various people have been having problems using floppies on a NeXT.
I've gotten conflicting reports about what should be done to solve the
problems, and we have no way to test it ourselves. If you don't have
"rename" in your C library, you will need to find an implementation.
I'm not sure if I want to roll in the GNU implementation into tar.

-mib

User-visible changes since 1.09:

Filename to -G is optional. -C works right.
Names +newer and +newer-mtime work right.

-g is now +incremental
-G is now +listed-incremental

Sparse files now work correctly.

+volume is now called +label.

+exclude now takes a filename argument, and +exclude-from does what
+exclude used to do.

Exit status is now correct.

+totals keeps track of total I/O and prints it when tar exits.

When using +label with +extract, the label is now a regexp.

New option +tape-length (-L) does multi-volume handling like BSD dump:
you tell tar how big the tape is and it will prompt at that point
instead of waiting for a write error.

New backup scripts level-0 and level-1 which might be useful to
people. They use a file "backup-specs" for information, and shouldn't
need local modification. These are what we use to do all our backups
at the FSF.


Here is a version of compress 4.0 hacked for MSDOS. A makefile is provided
which will compile it using Microsoft C, Turbo C, or Zortech C. The makefile
will need editing if other than the Microsoft compiler is used.
The program requires about 400K to run. It takes the same command line
args as does the UNIX program of the same name, and should be compatible
in all ways with that program. It will decode a 16 bit compressed file,
and can generate the same. On my machine, it decodes about twice as quickly
as the "u16" decompress program posted earlier to c.s.m.

Doug Graham.
uunet!mitel!sce!tsmith!graham

-------------------------------

Ported to OS/2. Only the memory allocation and some usage().. stuff
was changed, -k (keep) option added.
Under OS/2 and if a family mode application is to build, the huge segment
allocation functions of the DOS layer have to be used carefully instead
of the MS C library routines for big segments.
The system calls DosAllocHuge() and DosGetHugeShift() are used.


Compile with:
CL -AS -G2s -Oltn -Zep -W3 -Lp -Fb -F 2000 -DOS2 -DMSC -DPROTO -Di8088
compress.c compress.def setargv.obj -link /noe
or:
SET CL=-AS -G2s -Oltn -Zep -W3 -Lp -Fb -F 2000
SET LINK=/NOIG /NOE
CL -DOS2 -DMSC -DPROTO -Di8088 compress.c compress.def setargv.obj

You have to use Microsoft C 5.1 or above.


Kai Uwe Rommel
[email protected]

-------------------------------

Compress now supports the HPFS file names. On a HPFS, it now appends .Z
like under Unix instead of replacing the extension with .Z like it
does on a FAT file system.

Kai Uwe Rommel

-------------------------------

Made 32-bit for OS/2 2.0 with emx/gcc 2.1. Interestingly, this
originally 16-bit version performs a bit better (10%) when "ported back"
to 32-bits (just simplification of the code) than the current generic
Unix version compiled for OS/2 2.0, if the I/O buffering is the same in
both versions.

All 16-bit code for DOS and the compilers mentioned at the top of this
file was removed as well as the 16-bit OS/2 support.

Kai Uwe Rommel [email protected]

ASPITAPEASPI Tape Device Driver for OS/2 1.3 and 2.0.

Andreas Kaiser,
Danziger Str. 4
D-7000 Stuttgart 70
Germany

Fido:2:241/7220.9
Subnet:[email protected]

Legal Notice (I don't write legal stuff in a foreign language, sorry):
----------------------------------------------------------------------

Ich uebernehme keinerlei Gewaehrleistung fr korrekte Funktion oder
irgendwelche daraus resultierenden Schaeden oder Folgeschaeden. Es
liegt in der Natur von Geraetettreibern, dass dadurch die Integritaet
des Systems verletzt werden kann.

Licence:
--------

You are free to use and modify this source, as long as you make your
your device driver available for public according to the usualy GNU
Copyleft license and send me a note for what device your driver was
written.

Docs:
-----

There are no docs on this driver, since you'll have to take a close
look into the code anyway. A few additional notes:

The driver was written using Zortech C 3.0 (16-bit!). The segment
definitions of OS2-DD mimic Zortech segment usage but should be ok for
MSC 6.0 too.

Only the default small-model data and code segment groups are resident
in memory after init-phase is done. If you have to save space, put all
init-only data in far segments like I did in "init.c". FAR segments are
discarded after init-phase.

main.cDevice driver code
init.cInit phase code.

Command line arguments:
-----------------------

First word:Char device name (such as TAPE$4). Upper-case preferred.
Target ID
AAdapter number.
DInitial debug level.
TAlternate way to specify the target ID.
VDebugging output on VGA instead of monochrome.
CDevice type code if not TAPE (can be used to test
and configure other device types via the TAPE utility)



OS2-DDC Character Device Driver Support Package
for OS/2 1.3 and 2.0.

Andreas Kaiser,
Danziger Str. 4
D-7000 Stuttgart 70
Germany

Fido:2:241/7220.9
Internet):[email protected]
Tel. (Voice):49-711-766116

Please use EMail whenever possible.

Legal Notice (I don't write legal stuff in a foreign language, sorry):
----------------------------------------------------------------------

Ich uebernehme keinerlei Gewaehrleistung fr korrekte Funktion oder
irgendwelche daraus resultierenden Schaeden oder Folgeschaeden. Es
liegt in der Natur von Geraetettreibern, dass dadurch die Integritaet
des Systems verletzt werden kann.

Licence:
--------

You are free to use and modify this source, as long as you make your
source and your device driver available for public according to the
usual GNU Copyleft license and send me a note for what device your
driver was written.

Files:
------

This driver was developed with Zortech C, but will probably be usable
with other compilers too. Note that the compiler *MUST* be used in
small model SS!=DS mode.

A note on Microsoft C 6.00A: MSC seems to have trouble with implicit
runtime library calls for some long assignops in d[2]debug.c. A
destination address in the stack got pushed as near pointer even though
SS!=DS was specified on the command line. The result was a system panic
on first use. I did not investigate any further, since ZTC serves my
purpose.

dd-head.incDevice driver header.
Requires some symbol definitions
DD_ATTRIBDriver attributes.
DD_NAMEDevice name, 8 characters
padded with spaces.
The driver source must provide an ASM file, which
defines both symbols and includes this file. No more
contents are required. The generated object file must
be the object first file in the linker command line,
since the header must be the first data in the EXE/SYS
file.

dd-segs.incDevice driver segment definitions.
macros.incUtility macros.

lowlevel.asmBottom layer. Contains entry point, C wrappers.
for most DD helper functions, ...

dd.hDevice driver definitions and declarations.

strategy.cStrategy routine. Dispatches device driver functions.

ddebug.cDebugging code for direct video output.

If you use Zortech C, the function _STI_ddebug is
automatically called whenever this file is linked
with the driver (= when debugging code is compiled).

If you do not use Zortech C, you have to call
_STI_ddebug as the first statement of DrvInit();

Set the variable video_address to 0xB8000 to get
debug output on VGA in a fullscreen session, the
default is 0xB0000 for a monochrome chard. Use
monochrome whenever possible, you will not get init
time output for BASEDEVs when the output is on VGA.

d2debug.cSame as ddebug.c but for BASEDEV drivers.

If you do not use Zortech C, you have to call
_STI_d2debug as the first statement of DrvInitBase();

def_*.cDefault driver functions, called by strategy()
unless defined in the device driver source
(requires linking with /NOE).

demo.defSample definition file.

Usage:
------

You should already know about OS/2 device driver programming (get IBM's
"OS/2 Physical Device Driver Reference"). The strategy dispatcher calls
functions named DrvInit, DrvRead, ... (see dd.h) whenever the
corresponding function code is received. The default versions in this
library return an "Invalid Function" error indicator. These functions
should return the status word (e.h. "return DONE").

For debugging, I strongly recommend a monochrome card as secondary
video adapter, but you can use a primary color adapter too with some
restrictions (see above), Debugging is enabled when compiling with
DEBUG=1. For non-ZTC users: Don't output debugging info before DrvInit
or DrvInitBase calls the appropriate _STI_ function.



 December 19, 2017  Add comments

Leave a Reply