Dec 312017
OZCIS (1 of 4). Excellent navigator program for CompuServe. This is the 04/18/92 release. If you use compuserve, you need to check this one out.
File OZCIS1.ZIP from The Programmer’s Corner in
Category Communications
OZCIS (1 of 4). Excellent navigator program for CompuServe. This is the 04/18/92 release. If you use compuserve, you need to check this one out.
File Name File Size Zip Size Zip Type
OZCIS.EXE 272064 108782 deflated
OZCIS.OV1 314615 121838 deflated
README.1ST 43523 14740 deflated

Download File OZCIS1.ZIP Here

Contents of the README.1ST file

README for OzCIS 1.1a (17-Apr-92)

OzCIS is copyright(c)1990, 1992 by Steve Sneed. All rights reserved.

"GIF" and "Graphics Interchange Format" are Service Marks of CompuServe,
Inc., a H&R Block Company. Other trademarks and service marks used herein
are the properties of their respective owners.

This README.1ST file details additions and corrections that occured too late
to be placed in the main documentation. I recommend you print out a copy
and keep it with your main documentation.

!!!!!!!! IMPORTANT !!!!!!!! IMPORTANT !!!!!!!! IMPORTANT !!!!!!!!

USERS OF PREVIOUS VERSIONS, PLEASE NOTE: There have been changes in the Host
Configuration screen to allow support for alternate port base addresses
and/or IRQs, and to support alternate modem reset commands. In order to add
these capabilities without having to change the size of the host data record
in the HOSTS.DB file (and therefore require you to redefine all of your
hosts completely), a couple of existing fields have been reduced in size:
The "Modem Init String" field has been reduced from 40 to 30 characters, and
the "Phone Number" field has been reduced from 40 to 37 characters.

You need to enter the Edit Host Configuration screen for each host you have
defined, and make sure the new "Base Address" and "IRQ" fields are correct
for your configuration (the will be in the vast majority of cases), and to
define a "Modem Reset" string.

!!!!!!!! IMPORTANT !!!!!!!! IMPORTANT !!!!!!!! IMPORTANT !!!!!!!!

System requirements to use OzCIS

The following are minimum hardware and software requirements in order to
run and use the OzCIS Navigator:

* A IBM AT-compatible computer (80286 or better processor, 10MHz or
faster) or IBM PS/2 MicroChannel(tm) computer with a 286 or better
processor, and at least 1Mb of memory. A minimum of 485K of free memory
must be available when OzCIS loads; 520K to 550K or more is strongly
recommended. Additionally at least 1Mb of EMS and/or XMS memory is
strongly recommended.

NOTE: The program *will not run* on XT-class machines.

* A hard disk with at least 1.5Mb free. This is a bare minimum; if you
maintain a large number of forums you will need more. Sorry, floppy
disk systems are *not* supported.

* If a mouse is used, the driver must be of recent enough vintage to
support the "Save State" and "Restore State" services. MS v. 6.0 or
later, Logitech 4.01 or later, etc.

* A serial port and modem. Ports 1 thru 4 are supported for AT-style
machines, and ports 1 thru 8 on PS/2s. The modem must be a fully Hayes
compatible model, including most high-speed modems such as US Robotics
HST/V.32/Dual Standard models or the Microcom MNP-series models. A
"direct-connect" option is available for those connecting thru modem
servers or pools, but no support for network comm servers is provided.
An error-correcting modem (MNP or V.42) is *strongly* recommended.

* A method of connecting to CompuServe that provides a full 8-bit data
path. OzCIS uses only 8/None/1 port parameters; the network you use to
connect to CompuServe must be capable of making such a connection.

The following points are recommended capabilities in order to use OzCIS to
its best abilities:

* A mouse is not required, but using one makes several things a bit

* At least 1Mb of EMS memory is strongly recommended. The program is
heavily overlaid, and having EMS available for overlay storage will
dramatically improve program response.

* You can use OzCIS under DesqView or Windows. In either case, you need
to define a PIF file for the program. In either environment, it is better
to run full-screen rather than in a window, though the program will work
fine when run in a window where enough processor power is available (in
other words, running the program in a window is not recommended on a
386sx-based machine or slow 386dx.)

* While DOS 3.1 or later will work, DOS 5.0 is highly recommended since it
gives you a good bit more memory to work in. The program has not been
thoroughly tested under alternative OS shells such as 4DOS, but
preliminary testing shows no conflicts.

* While any PC color video system will work for text or graphics in the
program, to take full advantage of the program's graphics capabilities a
SuperVGA system is recommended. If your SVGA card has an available VESA
driver, use it. OzCIS does not at this time support Herc Graphics
Workstation or other TIGA or Targa type cards other than in SVGA
emulation mode. The program supports UltraVision, and all high-res text
modes such as 132-column and/or 43/50-line modes.

* While not required, an error-correcting modem is highly recommended.
Line noise is the dread enemy of automated online processing; an error-
correcting modem eliminates most all potential problems in this respect.
Most CompuServe nodes support MNP level 4, while only some suplimental
carrier (TYMNET, TeleNet, etc.) nodes provide MNP. In order to use a
9600bps node your modem should be V.42bis compliant or MNP 4 compliant.

Caveats, warnings and known problem areas:

* Some laptops and recent desktop machines use special ASIC (Application-
Specific Integrated Circuit) chips for the serial port hardware rather
than the traditional NS8250-style UART chip. These ASICs have varying
levels of compatibility with the NS8250-style chips; some are known to
be real problem children, especially the ones used in the new Toshiba
"SXe" series machines (I've talked to several people who can't get *any*
of their comm software to work on these machines.) Great pains have
been taken to assure OzCIS works with as broad a range of hardware as
possible, however, I cannot promise it will function correctly when used
on this kind of hardware.

* Some EMS managers tend to keep interrupts turned off for too long a
time while performing internal work, causing characters to be dropped at
the serial port and creating "Port overrun" errors. The faster your
port speed, the more likely this problem is to occur. While recent
changes to OzCIS have pretty much eliminated this problem, the chance
exists that it can still occur with old or brain-damaged EMS managers,
especially when such drivers are used with some disk caching software. If
you get port overrun errors, especially at 9600bps or above, try
uninstalling your EMS driver and repeating the test; if this cures the
problem you have one of these slow drivers and/or disk caches.

Quick-Start Information

I recognize that many users will want to get started right away. I also know
that many people refuse to read documentation, often with good reason. These
"Quick-start" instructions will help you get up and running in a minimum
amount of time and effort. Note however that what is covered in this
section is aimed at experienced CIS users, assumed to have at least a basic
knowledge of CIS, the common terminology used on the Service, what a
navigator program is designed for and supposed to do, and troubleshooting
techniques for program installation and modem configuration.

1. Create a subdirectory for OzCIS and its support files. Copy all of the
compressed program files into that subdirectory and unpack them. To save
yourself disk space, copy the compressed files to a floppy disk for
safekeeping and delete the compressed files from the program directory.
Users of other navigator programs note: do *not* install OzCIS in the
same directory as ATO, TAPCIS or CISOP. OzCIS creates or uses several
files with the same names as these other programs; while OzCIS should
never "bomb" on files from one of the others and can easily read or deal
with several of them, the files it creates can cause problems for these
other programs.

2. Run OzCIS. The install package includes example HOSTS.DB and FORUMS.DB
database files; you will need to select "Special -> Maintain Hosts" and
add or edit one or more hosts for your connection number(s) to CIS, then
select "Maintain Forums" from the same menu to add your forums. The
online help (press anywhere in the program) will provide enough
information for most users familar with CIS to set up these areas, but
consult the full documentation if you need extra information.

3. Your first online session should be a Profile Configuration session.
Select "Online -> Profile Configuration" to do so. This process logs on
to CIS and sets up your configuration options so that OzCIS works best.
If you have defined multiple hosts for different baud rates, you will
need to perform a Profile Configuration pass at each baud rate.

4. If you have used TAPCIS or ATO, and your profile is set up for those
programs, it will also be acceptable to OzCIS; however, you will not be
able to take full advantage of the program's ability to display GIF
graphics images online. Performing a Profile Configuration pass will set
things up so that GIFs (such as the Weather Maps area) can be properly
managed. Note that TAPCIS and ATO do not support online graphics, and
turning on this capability for OzCIS may cause problems for those

5. Use the program. Enjoy!

Updates to the Program

From time to time OzCIS will be updated, as bugs are discovered and fixed,
and possible changes to CIS software nessessitate changes to OzCIS' online
processing management. OzCIS maintains the online processor portion of the
program as a separate module from the offline processing portion, so that
(among other reasons) these updates can be done in a timely manner without
forcing the user to re-download the entire program. In order to easily
determine which part is at what revision level, the following version
numbering scheme is used:

1.0 for the Main program
1.0(1) for the Online Processor module

A very minor revision, such as a small bug fix, will add a letter to the end
of the primary version number, such that "1.0" will become "1.0a". A more
substantial revision, but one that does not require upgrading the Online
Processor module, would update the minor version number, such that "1.0a"
would become "1.1". A new version, which would require replacing all parts
of the program, would update the major version number, such that "1.1" would
become "2.0".

A very minor revision of the online processor module would change the number
in parenthesis, such that "1.0(1)" would become "1.0(2)". A major change,
but one that would still work with the same major version number of the Main
Program, would update the minor version number, such that "1.0(2)" would
become "1.1(1)". A major revision will only occur along side a version
change of the Main Program.

The rule of thumb here is that version 1 of the Main Program will work with
version 1 of the Online Processor, regardless of the minor version number.
If you see that a new version of one or the other parts of the program has
been released (these will be announced in forum messages), as long as the
major version number is the same you can safely upgrade that part of the
program without worrying about the other part no longer working.

Late Additions

The following capabilities or enhancements were added to the program at the
last minute, and didn't make the documentation. The (num) after the header
indicates in what version the change appeared.

Extra clipboard commands (1.0)

Two new key commands have been added for clipboard copy and paste, which
match the equivilent key commands in the new WordStar 7.0:

^K[ - Copies the currently-marked block to the clipboard. Same as the
existing ^JC command.

^K] - Pastes from the clipboard to the current cursor location. Same as
the existing ^JP command.

Upload ASCII files to Mail (1.0)

Beta versions of OzCIS could only upload files to CISMail as binary files,
which meant text files could not be uploaded to Internet addresses.
Support for ASCII file uploads has been added, to allow this type of use.
There is a new field in the "Upload File to Mail" dialogue:

Binary? [Y] (N)

If YES (the default), the specified file is uploaded as a binary file, in
the normal manner. If set to NO, the file is uploaded as an ASCII file.
Warning: Neither OzCIS nor CIS does any checking to verify file contents,
so if you mistakenly upload a "real" binary file (a program file,
compressed archive, etc.) as an ASCII file, it's contents will be garbaged
and useless to the recipient. In general, never set this to NO unless you
are _sure_ it is what you want.

Manual purging of messages files (1.0a)

One service often requested has been some way of manually purging the
message files for both Mail and Forums. This has now been made available.
New menu options are available under MAIL and FORUMS->CUSTOM PROCESSING,
called "Purge Messages File". In either case, selecting these options do
the following:

1) A dialogue pops up asking if you want to "Purge by sessions?".
Answering YES selects purge-by-session, answering NO selects purge-by-days.
(Pressing aborts the process.)

2) Another dialogue pops up, allowing you to input the number of sessions
or days to purge by. (Cancelling this dialogue also aborts the process.)
The number of sessions/days defined in the Host Config (Mail) or Forum
Config (Forum) is displayed as a default value; you can change this to
anywhere between 1 and 99. Once you have done this, the purge process is

Note: Whether or not purged messages are saved to the .PRG file is
controlled by that setting in the Host Config (Mail) or Forum Config
(Forum); no input option is provided in this command for controlling
whether purged messages are saved.

There is also a new option in the Host Config (Mail) and Forum Config
(Forum) dialogues for Purge type: MANUAL. Selecting this purge type
allows you to define default settings for the manual purging process but
makes sure that no automatic purge is performed after an online session.

Finally, the way purging is performed has been rewritten to prevent loss
of messages when a disk I/O error (such as a full disk) occurs, and I/O
error reporting has been improved during the purge process.

New Script Commands (1.0a)

Several predefined variables have been added to the language. These allow
you to extract specific pieces of information from within OzCIS to be
used in your scripts. These are:

%HOSTNAME - the display name of the current host
%HOSTNUM - the Phone Number of the current host
%HOSTPORT - the commport in use
%HOSTBAUD - the baudrate in use
%FORUMWORD - the GO word for the current forum (truncated to 8 chars)
%USERNAME - the user's name in the Host record
%USERID - the user's PPN
%USERPWRD - the user's password
%PROMPTCHAR - the current prompt character (almost always ^G)

Two new script commands have been added to the language. These two
commands allow you to define multiple strings to be waited for, and
respond when any one of them is received.

ADD - Add a string to be waited on by the MWAIT command. Syntax:

ADD [number] "string to be waited for"

[Number] is any integer number greater than 0, and is placed
in the integer var you specify in the MWAIT command if this
string is the one "seen" first be the script processor.
"String to be waited for" is the text to be looked for, and
must be quoted just like other literal strings in the
language. ADD adds the defined string to a list that is then
used by the MWAIT command; MWAIT clears the list.

MWAIT - Wait for one of several possible strings defined using the
ADD command. Syntax:

MWAIT [integer var]

[Integer var] is one of the interger variables the language
provides. MWAIT waits until one of the strings defined in
the previous ADD commands is received, and then returns in
the integer var the ID number assigned to that string. MWAIT
clears the "add list" each time it is called, so you must add
the strings you want to wait for each time before you call

{example script using these commands}

;go to a forum with error-checking

lsend "GO IBMCOM"
add 1 ":"
add 2 "% "
add 3 "Welcome to "
mwait #1

if #1 <> "3" goto MissedIt

wait "Forum !" %PROMPTCHAR

lsend ""

Delete Messages via Alt-D (1.0b)

You can now delete individual messages from the .MES files. The command
to delete a message is . Using this command removes the message
from the list of messages for display and moves you on to the next
message. When you exit the Message Reader, or press F7/F9 to move to a
different forum, you are asked if you want to update the physical file on
disk; replying "Y" removes the message from the file itself, while "N"
leaves the file as-is.

Receipts on Mail File Uploads (1.0b)

You can now request a confirmation receipt on files uploaded to Mail, just
as you can for "normal" Mail messages. A new field in the "Upload File to
Mail" input dialog has been added:

Receipt? [N] (Y)

Setting this to YES from the default of No tells the program to flag the
file as "Receipt requested". You will be notified via Mail when the
recipient picks up the file, just as you are when a receipted message is
picked up by the recipient.

"Fast Paste" in the Reply Editor (1.0b)

A new key command, ^KA, has been added to the Reply editor. If a block is
marked in the upper (review) window when you issue this command, the
marked block is pasted directly into the Reply Editor at the current
cursor position without going across the clipboard. This saves several
keystrokes when pasting from the top to the bottom window, which is a
common operation, and also allows pasting between these two windows
without disturbing any clipping on the board.

Messages List (1.0d)

You can now view a picklist of all messages in the current forum (or mail)
and select messages from that list. Alt-L (or the OTHER > LIST OF MSGS
menu option) presents the list. Selecting a message from the list places
you in that message for reading/replying.

Subject List (1.0d)

You can now select a thread by subject. Pressing Alt-U (no equivilent menu
option) displays a list of the current message subjects and the number of
msgs on that subject; selecting a subject from the list puts you on the
first message in that thread, from which you can use the Thread-Forward
(Alt-F5) and Thread-backward (Alt-F3) commands to follow the thread.

EMS/EMS Support (1.1)

The message manager and catalog files manager now will take advantage of
installed EMS or XMS memory. This allows message or catalog files to grow
to up to 4000 entries, provided the full 2Mb of EMS or XMS is available.
Use of this memory is automatic when found, and the program will take
advantage of it if there is 512K or more EMS or XMS available when the
program starts. The program also always leaves a minimum of 512K of this
memory free, reducing its usage so that other programs that need EMS/XMS
will have some available. The program will use EMS before XMS. This is
*only* recommended for those users running a good memory manager like QEMM
or 386^Max; it is not recommended for those using the standard memory
managers provided with DOS (and especially the memory managers provided with
DRDos, which have some serious bugs.)

The program now checks for proper EMS support before installing the overlay
manager and initializing high memory use. The Turbo Pascal overlay manager
is simplistic, and its design is getting a bit old; it becomes very confused
when you have an EMS manager installed but use the NOEMS switch. QEMM at
least properly handles this situation and tells the program that EMS is not
available, but the EMM386 driver supplied with DOS and Windows is not so
bright; it will tell a program that the memory manager is installed, but
will fail any call to allocate or access EMS memory. This confuses the TP
overlay manager and causes all kinds of bizarre program behavior. OzCIS now
verifies that not only EMS is installed but that it also can be properly
accessed before allowing the overlay manager to attempt installing in EMS.
It will also disable virtual memory use, and force all swapping shells (such
as is done when going online) to use disk space rather than EMS or XMS.

New Script Command (1.1a)

Another new script command was added in 1.1a, the PARITY command. This
command is provided primarily for those users accessing thru a modem pool
or data switch than demands a 7E1 connection when accessing the switch
itself. IMPORTANT: OzCIS always switches back to 8N1 after connection
even if you forget to switch it back with a PARITY command. This
eliminates problems when doing file transfers.





Using EVEN switches to 7E1 parameters, and using NONE switches to 8N1
parameters. The baud rate is not changed. You should *not* use this
switch unless you really need to!

New Command-Line Switch (1.1a)

A new command line switch has been added: /W. This switch turns off the
checking the program normally does to prevent multiple copies running at
once, so users under Windows or DesqView can run multiple copies (to be
reading messages while performing a pass in the background, for example.)
Two warnings are very important while running multiple copies: 1) *Never*
try to read messages, etc. in one copy of the program while another copy
is processing the same area online! You'll garbage your files if you do.
2) *Never* try to make both copies be online at the same time thru the
same port! Trying to start the second copy into an online session will
cause an abrupt disconnect of the first.

New Support for Alternate Port Addresses/IRQs (1.1a)

OzCIS now allows you to define alternate Commport base addresses and/or
IRQs directly, rather than having to use an external utility. (If you
don't know what this means, you don't need it; use the default values
provided by the program.) Any base address between 0200h and 5000h can be
assigned, as well as any IRQ between 1 and 14. The program automatically
assigns the "standard" address and IRQ by default when you select a
commport. These options are set in the Host Configuration screen, next to
the port number field.

New Support for Alternate Modem Reset Strings (1.1a)

Since some modems use non-standard reset strings (for example, "ATZ1"
rather than the standard "ATZ"), OzCIS now allows you to define your reset
string in the Host Configuration screen. Leaving this field blank means
no reset is performed (just like the "Reset?" option in previous versions.)


The following important information was inadvertently left out of the
"What NOT to put into OzCIS message files" section of CISMAIL.DOC:

If you want to begin a line with a "/" character, make sure it is not the
VERY first character on the line. CIS might respond to "/" followed by a
word, thinking it is a command. If the perceived command is not in fact a
command at all, this could confuse the CIS software and cause trouble
during an automated pass.

The way to avoid such a problem is to put at least one space on the line
before you type the "/". Either that, or type two "/" characters in a row,
which tells CIS to treat "//" as a single, literal "/".

Also, When you fill in the SUBJECT data field of the Message Address
dialogue, don't use a numeral as the FIRST character in the subject line.
Due to its own internal processing requirements, OzCIS will strip out the
number. This should normally not interfere with your sending the message,
nor with anyone's receiving it. However, given the missing character, your
subject line might end up looking rather weird.

The following information was inadvertantly left out of the manual:

OzCIS File Naming Conventions

OzCIS writes a number of files in several directories. The following
is a list of the files' extensions and what they mean. "" means
the first eight characters of a forum's "GO" word.

First, "permanent" files.

.MES Received messages
CISMAIL.MES Received messages (CISMail)
.QS Quickscan headers (forums only)
.SAV Saved received messages
.OBS Saved outbox messages
.PRG Saved purged messages
.SEC Section names (forums only)
.S## Short-format library file lists ('##' means lib number)
.L## Long-format library file lists
.I## Index for long-format library file listing
.U## Long-format library file list update

The following are "temp" files, usually created only for the sake of a
single pass, then deleted when the processing they do is over:

.DL List of files to download
.UL List of files to upload
.REP Outbox replies to be sent
.GET list of QS header msgs to retrieve
.RTV Special "get library info" services
.SO Sysop services (sysop-flagged forums only)
.FLG Outbox positional info (prevents "TAPstutter")
.SLR Special list of single files to be "abstracted."
.CLS Special requests for custom library services
.CMS Special requests for custom message services

The main program files:

OZCIS.EXE Main program
OZCIS.OV1 Main program - overlay file 1
OZCIS.OV2 Online-processing overlay (overlay file 2)
OZCIS.CFG Main program configuration file
ADDRBOOK.DB Address Book file
HOSTS.DB Hosts info file
FORUMS.DB Forums info file
EXTRN.DB Externals info file

$$TEMP$$.GIF Temporary file for storing an online-view GIF image
$OZ#TMP$.$$$ Swap files for DOS shell ("#"= 1 for main prg, 2 for OV2)

OZCIS.LOG accounting log
SESSION.LOG full session log

OzCIS File Formats

As a general rule, the files OzCIS stores are in flat ASCII text format.
However, the .DB files (other than ADDRBOOK.DB) and the .CFG file are in
files of Turbo Pascal records. The format of those files follows.

NOTE: I reserve the right to change the format of any file OzCIS generates
or uses at any time! Unless otherwise noted, the contents of any of these
files should be considered READ ONLY.


SystemRecord =
GenPath : string[80]; {general working path}
PrnPort : Byte; {printer port or device}
PrnInit : string[20]; {printer init string}
PrnFF : Boolean; {send form feed?}
PrnTest : Byte; {printer test to use}
ThisSVGA : Byte; {S/VGA card type}
GrowGIFs : Boolean; {expand weather map GIFs?}
MonoAttrs : Boolean; {force mono attributes?}
Lines50 : Boolean; {force 43/50-line mode?}
Unused1 : Byte; {old var, no longer used}
PrnDone : String[20]; {printer reset string}
Unused2 : Byte; {old var, no longer used}
Unused3 : Byte; { " " " " " }
DefWrapWidth : Byte; {default editors wordwrap width}
DefUseIndent : Boolean; {use indent on editors?}
MailSeen : Boolean; {true if Mail in last pass}
Unused4 : Byte; {old var, no longer used}
TabsFixed : Boolean; {use fixed tabs?}
ShowAbsUserName : Boolean; {show uploader name in abstracts}
UseFileDialog : Boolean; {use dialog boxes?}
MPOK : Boolean; {last mail pass OK}
A1OK : Boolean; {last auto pass OK}
GIFPath : String[80]; {path to GIF files}
XParentMouse : Boolean; {use transparent mouse?}
SessionFlag : Boolean; {used for overwriting session log}
UseNoise : Boolean; {sound on?}
ConfirmExit : Boolean; {confirm exit?}
UseSB : Boolean; {use scrollback?}
Unused1 : Byte; {old var, no longer used}
SplitSize : Word; {split point for forum msgs}

Filler : Array[233..388] of Byte; {spare room for expansion}

TColors : ColorSet; {Terminal color set}
MColors : ColorSet; {Menu color set}


ExtrnRec =
Name : String[40]; {display name for picklist}
Cmd : PathStr; {actual command line}
UseSec : Boolean; {use 2nd copy of COMMAND.COM?}
Prompt : Boolean; {prompt on return from shell?}
Params : Boolean; {ask for parameters?}


ForumPassRec =
Include : Boolean; {this forum active in 1st Pass}
RW : Boolean; {read waiting msgs?}
RN : String[50]; {read new sections list}
QS : String[50]; {QS headers sections list}
SP : Boolean; {send pending msgs in 1st Pass?}
DoDL : Boolean; {do pending DLs in 1st Pass?}
DoUL : Boolean; {do pending ULs in 1st Pass?}
PurgeBy : PurgeType; {purge type}
PurgeCnt : Byte; {purge range}
PScript : String[12]; {perm script for this forum}
Ann : String[20]; {announcement numbers to retrieve}
SLS : String[50]; {short scan libs list}
SLL : String[50]; {long scan libs list}
GetSec : Boolean; {update sections names list?}
TScript : String[12]; {temp script for this forum}
DefSecs : String[50]; {new default sections list}
HMN : LongInt; {high message number}
SecPend : Boolean; {flags used during online processing}
SetOpts : Boolean; { " " " " " }
SLUpd : Boolean; { " " " " " }
MSeen1 : Boolean; { " " " " " }
MSeen2 : Boolean; { " " " " " }
Private1 : Boolean; {undocumented}
Private2 : String[19]; { " }
Private3 : Boolean; { " }
SavePrg : Boolean; {save purged messages?}
NewHi : String[9]; {reset to this HMN}
HSeen : Boolean; {flag used during online processing}
DoHMN : Boolean; {reset HMN on each pass?}
WaitOn2 : Boolean; {get waiting msgs on 2nd Pass}
DoSLL : Boolean; {do long scan on next pass?}
DoSLS : Boolean; {do short scan on next pass?}
SaveOut : Boolean; {save outbox messages?}

Filler : Array[359..382] of Byte; {spare room for expansion}

ForumRec =
Active : Boolean; {deletion flag}
Name : String[40]; {display name for picklist}
GoWord : String[20]; {GO word for this forum}
SubServ : String[3]; {service prefix}
Unused1 : Byte; {old var, no longer used}
FPath : String[79]; {path for forum files}
Unused2 : Byte; {old var, no longer used}
SpPath : String[79]; {spare path string, not used}
ASaveMsgs : SaveOutType; {method of saving outbox msgs}
UName : String[24]; {user's name/handle for this forum}
RemDups : Boolean; {remove duplicate msgs?}

FP : ForumP1Rec; {see format of this record above}
Flags : Word; {bitflags used internally}


HostRec =
Active : Boolean; {deletion flag}
Net : NetType; {network type}
PNum : Byte; {port number}
BRate : LongInt; {baud rate}
Name : String[40]; {display name for picklist}
Number : String[40]; {phone number}
PPN : String[15]; {user ID (PPN) number}
Pwrd : String[20]; {password (ENCRYPTED)}
UName : String[30]; {User's name}
Unused1 : Byte; {old var, no longer used}
DoInit : Boolean; {init the modem?}
Tone : Boolean; {use tone dialing?}
HWFlow : Boolean; {use hardware flow control?}
Pre1 : String[12]; {script to execute before auto processing}
Post1 : String[12]; {script to execute after auto processing}
AutoMail : Boolean; {process mail on this host?}
MPurgeBy : PurgeType; {purge method}
MPurgeCnt : Byte; {purge count}
IsAPS2 : Boolean; {is this a PS/2?}
DialTO : Byte; {dialing timeout}
InitTO : Byte; {port init timeout}
SWFlow : Boolean; {use software (XON/XOFF) flow control?}
MPrefix : String[40]; {modem init string}
MPath : String[78]; {main path for this host}
Unused2 : Byte; {old var, no longer used}

WeaRpt : Boolean; {activity flag and script name for special services}
WeaRptS : String[12]; { VVV }
WeaMap : Boolean;
WeaMapS : String[12];
Quotes : Boolean;
QuotesS : String[12];
Trends : Boolean;
TrendsS : String[12];
ENS : Boolean;
ENSS : String[12];
IBMFF : Boolean;
IBMFFS : String[12];
GraphFF : Boolean;
GraphFFS : String[12];
Other : Boolean;
OtherS : String[12];

Unused3 : Byte; {old var, no longer used}
DefDLPath : String[79]; {download path}
ASaveMail : SaveOutType; {method of saving outbox mail}
SavePurge : Boolean; {save purged mail messages?}
WatsNu : Boolean; {update the What's New listing}

Version History

1.0 - Original public production version released.

1.0a - Fixed bug in catalog merging that caused entries to be dropped or
duplicated. Fixed bug in Password field of Host Config screen
that prevented you from leaving that field blank (and therefore
forcing a request for a password when logging on). Added "char
searching" to the Forum Names picklist for the Forums main menu.
Added "Clipboard" item to the review (upper) window when replying
to a message, to simplify clipboard operations with a mouse.
Added manual purge capability to mail and forum message files.
Changed way "Ask for Outbox Save" is handled to eliminate inter-
mittant operation. Made adjustment in the way the lib scan command
is sent to CIS to work around a CIS lib software bug.

Fixed bug in OzLOG parsing of the "OFF" line that could cause total
times to be displayed as 00:00:00. (Uploaded as separate file)

Online processor mods made to script language to correct problem
with ONERROR command handling. Improved handling of msg subject
and sendto lines to eliminate potential ambiguities with quote
characters. Added new commands and predefined variables to the
language (see above).

1.0b - Removed "Fast Logon" option, as its operation was problematic and
confusing to many users. Added extra error-handling for the case
of the user pressing to abort a session while processing a
library scan. Added "Fast Paste" feature to reply editor (see

1.0c - Added support for receipts on files uploaded to CISMail. Fixed a
couple of niggling bugs in various display processes. Added extra
handling for joining forums where no default sections are defined.
(Hopefully) fixed a problem with multiple commands being sent during
QS retrieval.

1.0d - Fixed bug in handling of quote chars in msg subjects that would
cause an endless loop. Fixed display nit when saving a message.
Added safety check for deleting the last message in a file. Fixed
lockup problem when deleting the last msg in a group, and when
deleting the last msg in the .MES file.

Added substantial checking for errors when sending forum msgs.
Changed the way logon is performed to hopefully eliminate some
problems with "Press to continue" type prompts in long Mail
messages. Fixed lockup bug when processing a outbox msg whose
subject contains quote chars. Added capture of forum entry
message on 2nd Passes, to capture any "News Flash" in that forum.
Added checking for no default sections when joining a forum.

1.1 Added support for EMS or XMS memory use (up to 2Mb) for storage of
message and long-format catalog indexes. Fixed bug in Change Info
when sending a reply. Fixed bug in GWM script command sending
extranious "6" response, and also fixed pathing problem there.
Added checking to prevent the conflict with a memory manager when
the NOEMS command line switch has been used on that memory manager
(forces off all use of high memory.) Several other changes, fixes
and improvements.

1.1a Modified the allocation scheme for EMS/XMS to make it more
compatible with a wider range of configurations, and added
virtualization to disk when EMS and XMS are not available. Added
new /W command line switch (see above). Added new PARITY script
command (see above). Fixed minor glitch in GWM handling that
caused an extra prompt response on the "1" and "2" maps. Added
extra checking to reset the superscript 2 in the forums picklist
to eliminate extranious 2nd-Pass-Needed reports. Corrected a
couple of glitches in the message reader. Added a new sequence
into the handling of the Mail area to attempt (yet again) to
bypass the long-message bug in the CIS mail software on some
hosts. Modified certain aspects of online file and screen I/O to
hopefully eliminate the problems some users experience under
Windows or with lots of other TSRs/drivers active. Modified the
handling of the between-chars timeout to hopefully eliminate a
timeout problem under OS/2. Added new port base address and IRQ
options and modem reset field to the Host config (see above). Made
a minor adjustment to forum entry processing to improve handling
of entry into forums that have not been configured.


My heartfelt appreciation and thanks go to these fine people and
organizations, without whom OzCIS would still be a pipe dream:

o TurboPower Software and its staff (Kim Kokkonen, Brian Foley, Rich
Sadowsky and Terry Hughes) for providing exceptional tools on which to
base the program, consistent feedback and ready support... and for being
understanding employers and co-workers...

o The IBMNet Forums staff, especially Don Watkins and Connie Kageyama, for
putting up with months of "This is a test, please ignore" messages and
files, and providing much helpful information and encouragement...

o The Rocknet Forums staff, especially Mark Oldham, for giving me a whole
backroom of my own to develop and debug the sysop services, and listen to
my belly-rumblings...

o The Graphics Forums staff, especially Larry Wood, Valerie Zen, Tom
Potoki, Jim Beebe and Chris Young, for years of help, support and
encouragement on the online GIF decoder tools...

o Many helpful individuals at CIS Corporate, especially Russ Ranshaw, Brion
Jones and Paul Bradshaw, for tons of helpful insights and info...

o The beta testers, too many to name, who beat the program up unmercifully
and never hesitated to let me know what broke, and who in reality made
the program what it is with their numerous ideas and suggestions. A
special thanks to Philippe Auphile, for his persistence in tracking some
especially nasty bugs, and his wonderful sense of humor through it all...

o My wife Robin, ever the loving Computer Widow, and my daughters Whitney
and Caitlin, who didn't pester Daddy *too* much.

 December 31, 2017  Add comments

Leave a Reply