Hosted products
/
Jürgen Hoffmann - various tools
Copyright © 2008-2013
Jürgen Hoffmann
[Under
European Union Public
Licence Version 1.1]
Contents
Description
During the years 2008 to
the beginning of 2011 I wrote a number of programs that might (or might not)
be useful to others, so why not sharing them? Many of them were inspired by
the experiences I made with UNIX shell programming. But (MS-)DOS is not UNIX
and it is not always useful to do a one-to-one port of an existing UNIX program
to DOS. The programs and utilities offered here for download were all re-written
from scratch, considering the capabilities and limitations of true 16-bit (MS-)DOS.
Most of them were developed under Borland C++, version 3.1 on an old computer
with a 486 processor. They do not require 32-bit support or any kind of DOS
extender software. As far as networking is involved they do however require
a packet driver.
DOSUTILS
The archive DOSUTILS.ZIP
is a collection of seventeen small utilities which are most useful in batch procedures
even though most of them can also be used from the command line. One of them
allows to do (32-bit) integer calculations which can not only be used for numeric
loop counters but for many other purposes as well. Another one allows to cut
arbitrary parts from the output of other programs and store them in environment
variables. And a third one provides a user menu and directory browser. But why
don't you just look and try yourself?
Detailed descriptions of
the individual programs can be found in the files DOSUTILS.TXT and
FORM.TXT in the archive.
- ASKECHO - prompt
for user input
- TIMESTMP -
write date/time in a very flexibly configurable format
- RPN - perform
integer calculations
- PIPESET - store
the output of other programs in environment variables
- TEE - split
data stream
- TR - translate
characters
- SELECT - user
menu and directory browser
- FORM - a very
versatile dialogue utility for batch procedures
- FAM - automated
text modification
- PRINTF - an
improved echo command
- FNTOOL - an
LFN-aware program to transform DOS file names in various ways
- INLINE - place
multi-line input for programs directly in batch files
- SCRDUMP - a
utility to dump parts of the screen to a file
- DUMPENV - show
environment and parent's environment (test and debugging aid)
- CGENERR - return
with defined error code (test and debugging aid)
- GENERR - return
with defined error code (test and debugging aid)
- INVOKE - invoke
program and report the error code it returned (test and debugging aid)
ETHTOOLS
The archive ETHTOOLS.ZIP
is a collection of seven programs for ethernet network analysis. They require
an ethernet card (of course) and a packet driver, but no further configuration.
A description can be found
in the file ETHTOOLS.TXT in the archive. In addition each program has
a built-in help function which can be accessed by the command line switches
/h or /?
- ETHSEND - Send
a (raw) ethernet frame
- ETHDUMP - An
ethernet data capturer (AKA "sniffer")
- ETHWHO - LAN
traffic analysis (who sends whom how much)
- ETHWHAT - LAN
traffic analysis (what frametypes and which protocols are used)
- ETHSHOW - Browser
for captured data
- ETHWATCH -
capture traffic from the LAN to the internet and vice versa
- WWWATCH - list
all HTTP requests coming from the LAN
LANSTAT
LANSTAT (LAN STATus)
is a LAN supervisor, a program that regularly polls the nodes of a local area
network to check their accessability and constantly displays the status of the
LAN in a clearly arranged tabular manner. The trick is, that LANSTAT
doesn't do any network access by itself, rather it invokes external programs
(like, e.g., ping) for that purpose. This approach does not only keep the program
very compact, it also makes it independent of the underlaying network stack.
Therefore LANSTAT can run under virtually any type and brand of networking
software.
NTOOL
NTOOL is an incarnation
of the program netcat which is also known as the "swiss army knife"
of TCP/IP networking. See the file NTOOL.TXT inside the archive. It
further describes the program and gives a number of examples of how it can be
used.
RMENU
RMENU is "kind
of" a telnet server for DOS. Of course it cannot turn (MS-)DOS into a multiuser
system, therefore only one connection is accepted at any time, but it can be
used to remotely control a computer runnig DOS via telnet. Unlike one might
expect, it doesn't provide a command prompt, at least not by default, rather
it offers the remote user a menu from which he/she can pick an item. What kind
of actions the various menu items perform, is controlled by a configuration
file. Although the archive comes with a demo-configuration file which allows
to play around, it is absolutely necessary for a serious application to carefully
set-up this configuration file according to the individual needs. The file RMENU.DOC
which can also be found in the archive tells you the details.
Screenshots
Screenshot #1: The help screen of the RPN calculator RPN.COM.
Screenshot #2: The help screen of the program to set environment variables PIPESET.COM.
Screenshot #3: The menu program and directory browser SELECT.COM.
Screenshot #4: One example of the capabilities of FORM.
Screenshot #5: Another example of the capabilities of FORM.
Screenshot #6: The help screen of the ethernet capturing program ETHDUMP.EXE.
Screenshot #7: The main screen of the ethernet data browser ETHSHOW.EXE.
Screenshot #8a: An example of LANSTAT's screen layout.
Screenshot #8b: An example of LANSTAT's screen layout.
Screenshot #9: An example of LANSTAT's optional HTML output.
Screenshot #10: The help screen of the network utility NTOOL.EXE.
Screenshot #11: RMENU used to remotely edit its own source code in
Borland C++, via the telnet client that came with Windows 98.
Screenshot #12: The same as above, but with
PuTTY as the
telnet client.
System requirements
- Intel 8086/88 microprocessor
(or compatibles)
- Microsoft MS-DOS 3.0
(or compatibles)
- PC/TCP packet driver
(for network programs)
Version history
2012-12-30
- added INLINE
version 1.0 to DOSUTILS package
- updated FORM
to version 1.2 in DOSUTILS package
- updated PRINTF
in DOSUTILS package
- updated TR
to version 1.1 in DOSUTILS package
2012-02-12
- updated FORM
to version 1.1 in DOSUTILS package
- updated SELECT
to version 1.7 in DOSUTILS package
2012-01-08
- added FNTOOL
version 1.0 to DOSUTILS package
- updated RPN
to version 1.2 in DOSUTILS package
2012-01-07
2011-05-27
- added FORM
and SCRDUMP version 1.0 to DOSUTILS package
- updated SELECT
to version 1.6 in DOSUTILS package
2010-10-22
- added PRINTF
version 1.0 to DOSUTILS package
- updated LANSTAT
to version 1.9
2010-09-03
- updated DOSUTILS'
SELECT to version 1.5
2010-09-27
- updated LANSTAT
to version 1.8
2010-09-26
- updated DOSUTILS'
FAM to version 1.3 and INVOKE to version 1.1
2010-08-31
- updated LANSTAT
to version 1.4
2010-08-30
- updated DOSUTILS'
SELECT to version 1.4
- updated LANSTAT
to version 1.3
2010-08-26
- updated DOSUTILS'
SELECT to version 1.3
2010-08-24
- added LANSTAT
version 1.2
2010-07-06
- updated DOSUTILS'
FAM to version 1.2
2010-05-24
- updated DOSUTILS'
PIPESET to version 1.1 and SELECT to version 1.2
2010-04-10
- updated DOSUTILS'
FAM to version 1.1
2010-02-19
2010-01-06
2009-12-18
2009-03-06
- updated RMENU
to version 1.7
2009-02-07
- added RMENU
version 1.0
- updated NTOOL
to version 1.5
2008-09-30
- updated NTOOL
to version 1.4
2008-09-07
- updated NTOOL
to version 1.3
2008-09-06
- first public release
(of NTOOL version 1.2)
Downloads
DOSUTILS: dosutils.zip
(285.9 Kbytes)
ETHTOOLS: ethtools.zip (185.2
Kbytes)
LANSTAT: lanstat.zip (106.0
Kbytes)
NTOOL: ntool-15.zip (109.0
Kbytes)
RMENU: rmenu-17.zip (123.6
Kbytes)
|