home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 2 BBS
/
02-BBS.zip
/
vpjam123.zip
/
JamAPI.Doc
< prev
next >
Wrap
Text File
|
1997-09-03
|
4KB
|
94 lines
VPJAM - a JAM API for Virtual Pascal, Version 1.2
for Virtual Pascal for OS/2, Version 1.10
Copyright (C) 1996-97 Dusk To Dawn Computing. All Rights Reserved
1. Introduction: (What is JAM?)
~~~~~~~~~~~~~~~~
JAM is a format for message systems, primarily FidoNet-style BBS systems.
It was created in 1993 by Joaquim Homrighausen, Andrew Milner, Mats Birch,
and Mats Wallin to be a new standard for FidoNet message bases, and as a way
to replace the older Hudson message base. It was first implemented in
Milner's BBS software, RemoteAccess. It is an advanced message architecture,
supporting multiple file attachments, nearly unlimited message size (Up to 2
gigabytes per message), password protection, complete reply tracking,
programmer-defined message subfields for any purpose necessary, and quite a
bit more than can be described in this paragraph. :)
2. Disclaimer:
~~~~~~~~~~~~~~
VPJAM is guaranteed only to take up disk space. Though this unit has been
thoroughly tested on my machine, I have no way of knowing what your setup is;
and as always, if it breaks, you have the pieces.
3. About this implementation:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
VPJAM, my version of the JAM API, was created so that I could write my BBS
software, Aspect/2. I wanted to support JAM and SquishMail bases, but didn't
have a JAM API for OS/2, and especially one for Virtual Pascal...It took me
quite a while to find the original JAM API for DOS, which thankfully included
a Turbo Pascal version. I used the TP version as a template for my own
version (although many things are implemented in a more Pascal-like manner in
my version), while I had to implement a few things on my own (Like the Unix
time conversion routines).
4. Installation
~~~~~~~~~~~~~~~
Basically, run the installation program, pick the directories you want the
various components to be installed into, and let it go. You should then be
able to use the library.
5. Files included:
~~~~~~~~~~~~~~~~~~
Unit files:
JAM.LIB/VPI Declarations and record definitions
JAMMB.LIB/VPI The actual message base object class
JAMINFO.LIB/VPI Utility functions for included sample message viewer
D2DCRC.LIB/VPI Dusk To Dawn Computing's CRC32 unit
UNIXTIME.LIB/VPI Dusk To Dawn Computing's tDateTime <-> tUnixTime unit
Source files:
JAM.INT Interface for declarations and record definitions
JAMMB.INT Public interface for message base object
JAMINFO.PAS Source for utility functions used in sample viewer
JAMUTILP.PAS Source for sample JAM message base viewer
D2DCRC.INT Public interface for CRC32 unit
UNIXTIME.INT Public interface for UnixTime unit
Resource files:
JAM.H C-style header file for JAM.RC
JAM.RC RC.EXE source file for VPJAM's resources
Executables:
JAMUTILP.EXE Sample JAM message base viewer/reader
6. Using VPJAM
~~~~~~~~~~~~~~
The only usage documentation included directly in this release is the sample
message base viewer, the interfaces for the units, and the source for the
JAMInfo unit. It's pretty much self-documenting code, so that shouldn't be too
much of a problem, but if you have questions or problems in implementation,
feel free to send me email about it.
1.23 Update: There is an ongoing project to completely document VPJAM in HTML
format. The documentation is available at the URL:
http://DuskNet.dyn.ml.org/Pascal/VPJAM/
In a future release, the HTML documentation may be included in the base
package, once it is complete and ready.
7. Contacting me
~~~~~~~~~~~~~~~~
I have two email addresses; the first, an account on the Grand Rapids Free-Net,
is deek@grfn.org. The second is on my BBS, (located at DuskNet.dyn.ml.org if
you would like to telnet there) and that is sysop@DuskNet.dyn.ml.org. I can
also be found from time to time on the EFnet IRC network, using the nickname
Deek, and in the channels #OS/2 and #OS2Prog.
If you have suggestions or have a bug to report, *please* email them to me!
That way I can keep an archive of what suggestions I've looked at/worked
on/added in, and I can also keep track of who suggested what.