home *** CD-ROM | disk | FTP | other *** search
-
-
-
- +----------------------+
- | "Why anybody would |
- | name a program after |
- | a food additive is |
- | beyond me..." |
- | -Bryny |
- +----------------------+
-
-
- MSG
- ---
-
- Copyright 1986-1989
- by Ron Bemis - Node 124/1113
-
- MSG is a program that allows you to read, reply, enter, and modify FidoNet
- messages. It has proven especially useful for point operators, because it
- is much smaller than other message readers, and it gets all of its needed
- information from AREAS.BBS and CONFIG.DOG, and does not rely on SYSTEM*.BBS
- files.
-
- MSG works much like FIDO or OPUS. You can invoke it with a chain of
- commands separated by spaces, and you can type a chain of commands at any of
- the program's prompts. The program always starts in your mail area.
-
-
- ENVIRONMENT VARIABLES USED BY MSG
- ---------------------------------
-
- BBS - your root Fido/Opus directory; the place you keep your AREAS.BBS,
- CONFIG.DOG, FIDOUSER.LST, and USERLIST.DOG files. If not defined, these
- files must be in the current directory.
-
- MSGED - your favorite text editor. Provided it's in your path, you don't
- need to specify the path or extension. If not defined, your editor will
- default to EDLIN (probably not what you want).
-
- EXAMPLE:
-
- SET BBS=C:\BINK
- SET MSGED=Q
-
- GENERAL COMMENTS
- ----------------
-
- The program is fairly self-explanatory. The user interface is much like
- you're used to using with Fido or Opus. Typing "MSG ?" will give a quick
- syntax reminder. Typing "?" at the main prompt, the C)hange prompt, the
- X)change prompt, or the Z)ap prompt will give a description of the
- available commands and their meanings.
-
- Great care has been taken in the programming of MSG so that unneeded output
- is not created when commands are "stacked". For example, typing "MSG A
- SYSOP = G > SYSOP.NEW" will create a file named SYSOP.NEW containing new
- messages in the SYSOP area, without the copyright message or any questions
- being sent to the file.
-
- MSG makes use of and updates the LASTREAD file in each of the message areas.
- If you use a renumbering utility on your message areas, be sure to specify
- an option to also update the LASTREAD files.
-
- As mentioned above, all information about message areas is read from
- AREAS.BBS. If you're a sysop, you've undoubtedly got at least one message
- area that is not an echomail area. To get MSG to recognize these areas, you
- must add them to your AREAS.BBS. Create a tag for them, but don't list any
- nodes on the line.
-
- Eight commands are not shown in the help screen. They are all two-letter
- commands:
-
- A= Read all new messages in next areas.
- AL List headers of all new messages in next areas.
- AN Change to next message area.
- AP Change to previous message area.
- RP Reply to the current message privately (default in netmail area)
- RN Reply to the current message publicly (only in netmail area)
- RC Mark reply message 'crash' (ignored except in netmail area)
- RH Mark reply message 'hold' (ignored except in netmail area)
-
- For example, to read all new messages in all areas, you could invoke the
- program like this:
-
- MSG X M C H ^ A=
-
- If the "A=" or "AL" subfunction is used in an area other than the mail area
- (message area #0), they will work on the current area and subsequent areas
- only. So if you used "A=" to read all messages, you could stop the output,
- enter or reply to a message, then type "A=" again to continue reading.
-
- If a file named MESSAGE.LOG exists in the 'BBS' directory, the four A?
- commands mentioned above will work differently. They will act as if the
- only message areas available are those that are listed in MESSAGE.LOG.
- Other commands are not affected. Starting with MSG V3.3, this file
- (MESSAGE.LOG) is maintained for you. You may add to it, but you won't need
- to delete it. MSG will re-write it when you exit the program, and will list
- only those areas in which you have not yet read the last message. So if you
- don't finish reading messages in all areas, MSG will keep track of which
- ones are left. If you use CONFMAIL to toss messages, use the -F switch to
- create a log file. Append the contents of this file to the end of
- MESSAGE.LOG each time you toss. For example:
-
- ConfMail Import Areas.BBS -K -N -M -S -F EchoToss.Log -A Arce
- Copy Message.Log+EchoToss.Log Message.Log
-
- The J)ump command invokes a DOS shell if nothing follows the "J" on the
- command input line. If a DOS command follows the "J", it will be passed to
- the command processor, and control will then return to MSG.
-
- If you "visit" an area that contains no messages, the LASTREAD pointer will
- be stored as 1 rather than 0 in echomail areas only. This is mainly to
- ignore the "High water mark" message in echomail areas that is created when
- you scan an empty area.
-
- When you first enter a message area, MSG stores a copy of the LASTREAD
- pointer in its local memory. This local copy is called a marker. There
- is a separate marker for each message area. You can return to the "marked"
- message by using the "@" command, and you can change the marker to the
- current message by using the "!" command.
-
- MSG maintains a file named MSGTOSS.LOG file in the home (BBS) or default (if
- BBS is undefined) directory which contains a list of areas into which you
- entered echomail messages. This file is compatible with ConfMail's -F
- switch, and could be used with the export function. The file is deleted
- when the program begins, and is only appended when a message is entered in
- a new area, so if no echomail messages are entered, it won't exist. The
- sample MSGS.BAT file, included in this archive, will help you to understand
- this special feature. When MSG starts, it deletes MSGTOSS.LOG if one
- already exists from a previous run.
-
- To use the mailing list feature, create one or more text file with the
- extension .LST in your root (BBS) directory. Each should contain a list of
- names, one per line. When you E)nter a message, answer the "To:" prompt
- with an "@" sign followed immediately by the name of the file (no
- extension). For example, To: @DIST would use the file DIST.LST in the
- directory pointed to by the BBS environment variable.
-
- Pressing Control-C during any output will cause that output to stop. At the
- "More?" prompt, there are several keys that have special meaning. Control-C
- will stop the output, as will Escape, "N", and "Q". Any other key will
- cause the program to continue normally.
-
- The P)rivate setting in the Z)ap menu causes an area to be marked/unmarked
- as a private area. Anytime you E)nter a message, R)eply, or M)ove a
- message to a private area, that message will be marked private. While in a
- private area, you can still use the RN command to enter a public reply.
-
- Most of the program's output goes to "stdout", which means that it is
- redirectable. Certain error messages, screen clearing, cursor positioning,
- and "More?" messages however, go to stderr, and will be displayed to the
- screen regardless of any redirection in progress.
-
-
- HOTKEYS
- -------
-
- The H)otkey command at the X)change menu toggles Hotkeys on and off. When
- Hotkeys are on, you don't have to press Enter after most commands. Other
- differences you'll encounter when Hotkeys are ON:
-
- o You can't use any of the two-letter Reply commands.
-
- o To go directly to a message, press the "#" symbol. The program
- will prompt you for a message number.
-
- o Left-arrow = "P" o Right-arrow = "N"
-
- o Ctrl Left-arrow = "-" o Ctrl Right-arrow = "+"
-
- o Up-arrow = "AP" o Down-arrow = "AN"
-
- o Ctrl Up-arrow = "AL" o Ctrl Down-arrow = "A="
-
- o Home = "?" o End = "G"
-
- o Ins = "E" o Del = "K"
-
- o PgUp = "R" o PgDn = "W"
-
- o Keypad 5 = "H"
-
-
- o At the "More?" prompt, pressing any of these keys will immediately
- clear the prompt (as if you'd typed "N") and then execute the key
- you pressed.
-
- o When you press the "G" or End key, you will be asked to confirm
- that you want to leave the program. Press "Y" to confirm, or "N"
- to remain in the program.
-
- o If the definitions above don't suit you, you can define your own.
- See MSG.REF and the sample MSG.MAC file for details.
-
-
- FOR THE TECHNICALLY ORIENTED
- ----------------------------
-
- For command input, MSG uses the console device, not "stdin". This results
- in the program cooperating very nicely with the shareware program CED or the
- commercial program PCED. However, echoed console input is sent to the
- console rather than "stdout". Since "stdout" is a fully-buffered device,
- and console output is not, it's not a good idea to redirect the output if a
- mixture of input is used. For example, if you type
-
- MSG A= > TEMP
-
- you'll get a listing of all new messages in the TEMP file. However, the
- program will not terminate until you type "G" from the keyboard. If you
- examine the TEMP file, you'll find the "G" you typed in a strange place,
- probably somewhere in the middle of the last message. The solution to this
- problem is to carefully construct your command line to not need any input
- while using redirection. The "fixed" example above would look like this:
-
- MSG A= G > TEMP
-
- which would cause the program to end normally and not require any input from
- the console.
-
- Input directed into MSG will also work, but the same problems apply here as
- described above. Directed input is taken from the console device, so you
- shouldn't use redirection in both directions (i.e. "MSG <MSG.CMD >TEMP").
-
- If you make a file named MSG.CMD containing:
-
- A TECH
- E John Doe
- Your broken hard disk
- G
-
- you'll be able to do this:
-
- MSG < MSG.CMD
-
- and MSG will plop you into your editor to type the text of the message, then
- quit.
-
-
- BATCH FILES AND THE COMMAND LINE
- --------------------------------
-
- Three things have been done so that MSG will work nicely from the command
- line and automated batch files: 1) Empty word responses, 2) Line
- terminators, 3) Automatic message entry.
-
- Empty word response: When entering/changing a name, MSG expects a full
- name (two words). In interactive use, you can just type one name and hit
- return. But from the command line, you might need a way to tell MSG that
- you don't want to specify a last name. To do this, use the carat (^) by
- itself. This is also needed to quit from the C)hange, X)change, and Z)ap
- submenus. The sample batch file included in this archive gives an example
- of this.
-
- Line terminator: When entering a subject, search string, origin line,
- signature, area description, or DOS command, the full buffer of input is
- normally read. On the command line, you may want to specify more commands
- after a subject or search string. To do this, terminate the string with a
- carat (^) immediately following the last word of the string.
-
- EXAMPLE: Jump DIR /W \BINK^ Huh
-
- Automatic message entry: Every time you use the E), R), or B) command and
- edit a message's text, you are editing a disk file named MESSAGE.TXT. After
- you've saved this file, MSG reads it back, creates a message from it, and
- deletes it (and MESSAGE.BAK if one exists). So normally, there isn't a
- MESSAGE.TXT file in your default directory (which is always where it is
- created). But, if a file named MESSAGE.TXT *does* exist when you E)nter a
- message, your editor will not be invoked, and the existing file will be
- used. There are several ways to take advantage of this, here are a couple
- examples:
-
- COPY TECH.NOT MESSAGE.TXT
- MSG A TECH E John Doe Your broken hard disk^ G
-
- MSG A SYSOP J Copy TECH.NOT MESSAGE.TXT^ E Dave ^ Again?^ G
-
-
- POINTS AND BOSSES
- -----------------
-
- Two special-purpose lines in AREAS.BBS are recognized by MSG. They are:
-
- -BOSSNODE=xxx/xxx
- -POINTNET=xxx
-
- These lines may be anywhere in the file except the first line. The '-'
- should be in column one. You shouldn't use both of these lines, but you
- may need to use one or neither of them.
-
- -BOSSNODE=xxx/xxx This is used if you are a point. This is where you'll
- need to specify the net and node number of your boss
- system. Do not include a zone number - your boss must
- be in the same zone as you. If you are not in zone 1,
- you must specify your zone in the NODE line of
- CONFIG.DOG. The NODE line in CONFIG.DOG should specify
- your "fake" network number, and should not include a
- point number.
-
- -POINTNET=xxx This is used if you are a boss node with points. This
- is where you'll need to specify the "fake" network
- number of your point systems. With this line in place,
- you can send messages to your points by using either
- their "fake" address or their fully-qualified point
- address (your net/node number '.' their point number).
-
-
- ENTERING AND REPLYING TO MESSAGES
- ---------------------------------
-
- When entering a message in the MAIL area (#0), a destination node number
- must be known. If the person you're entering the message to is listed in
- USERLIST.DOG or FIDOUSER.LST, you won't need to enter this node number, it
- will be entered for you.
-
- If you are a boss node and have a -POINTNET statement in your AREAS.BBS
- file, messages to one of your points will be re-addressed to your private
- network number. For example, my network number is 124/1113. In my
- AREAS.BBS I have a "-POINTNET=9130" statement. In my USERLIST.DOG file, I
- have a line which says "Freiheit, Bill 124/1113.2002". If I enter a
- message to "Bill Freiheit", MSG will address it to 9130/2002. However, if
- I enter a message to "Joe Blow" on 124/6215.12, MSG will recognize that
- this isn't one of my points, and will address it to 124/6215 and will
- prefix the appropriate "TOPT 12" kludge line to the message body.
-
- If you are a point node and have a -BOSSNODE statement in your AREAS.BBS
- file, all mail messages (in area #0) you enter will be FROM your bossnode,
- with an appropriate "FMPT" kludge line in the message body.
-
- If you enter or reply to a mail message that is destined for a node outside
- your own zone, the message will be addressed to the zone gateway, and an
- appropriate "INTL" kludge line will be prefixed to the message body.
-
- If this all seems a little complicated, a little playing around with
- "Kludges On" (in the X)change menu) should enlighten you.
-
- File attaches: When entering the subject of a message when E)ntering or
- R)eplying in the mail area (area #0), you should specify a filename rather
- than a subject if you wish to attach a file. If the 2nd and 3rd characters
- of the subject are ':' and '\', respectively, MSG will assume that you've
- typed a filename, and will set the file attach flag. If this is not what
- you want, you can toggle the file attach flag on or off with the C)hange
- F)ileattach command.
-
-
- EXIT ERRORLEVELS
- ----------------
-
- MSG exits with one of four errorlevels:
-
- 3 - fatal error, can't continue.
- 2 - echomail was entered. MSGTOSS.LOG was created.
- 1 - matrix mail (area #0) was entered only.
- 0 - no error, no messages need to be scanned.
-
- See the included MSGS.BAT file for an example of how to put the errorlevel
- and the MSGTOSS.LOG file to work for you.
-
-
- FILES USED BY MSG
- -----------------
-
- *.LST A mailing list. To use, enter the filename preceeded by "@"
- (without the .LST extension) in response to the "To:" prompt
- when entering a message.
-
- AREAS.BBS This is a text file that you create, and which is shared by
- utilities such as ConfMail. One special note: The system
- name ! sysop name line must be on the FIRST line of
- AREAS.BBS. No blank or comment lines should be above it.
- See the "POINTS AND BOSSES" section above for more
- information about the -BOSSNODE and -POINTNET lines.
-
- Example:
-
- Nibbles & Bytes - Dallas, Texas - 214-231-3841! Ron Bemis
- ;Area Location Area Name Forwarding Nodes
- -POINTNET=9130
- M:\NOTES\ NOTES
- M:\POINTS\ POINTS 265/7 124/4115 124/6215
- ;and so on...
-
- CONFIG.DOG This is a text file that you create, and which is shared by
- other utilities. MSG only requires that there be two lines
- in this file, although there may be others. In the NODE
- line, if a zone number is not specified, the default is zone
- 1. If you are a point system, do not specify your point
- number on the NODE line. Put your "fake" address here, and
- use the -BOSSNODE statement in AREAS.BBS.
-
- Example:
-
- Node 1:124/1113 ;my network address
- Mail M:\MAIL ;matrix msgs location
-
- DIR.BBS This is an area description file. You may have one in each
- of your message area directories. MSG only uses them to
- display your current area. If they do not exist, MSG will
- instead display the directory path.
-
- FIDOUSER.LST This is created by your nodelist compiler. When you enter a
- netmail message, USERLIST.DOG is searched first. If the name
- is not found in USERLIST.DOG, or USERLIST.DOG does not exist,
- MSG will search FIDOUSER.LST.
-
- HANCOCK.JON This is the 'signature' file. If a file with this name
- exists in a message area, the contents will be appended to
- each message you create by E)ntering or R)eplying. If a file
- with this name exists in the 'BBS' directory, it will be used
- as a default if there is no HANCOCK.JON in the corresponding
- message area. Only one line of up to 75 characters will be
- read. Do not use graphics or other non-ASCII characters in
- this file.
-
- LASTREAD. These are small binary files that exists in each of your
- message area directories. They are used to store a pointer
- to the last message you have read in each area.
-
- MESSAGE.TXT This is the filename passed to your editor for any message
- editing. This includes E)nter, R)eply, and B)ody. Once
- saved back into a message format, the file is deleted.
-
- MESSAGE.BAK Possibly created by your editor. If it exists after editing,
- it is deleted.
-
- MESSAGE.LOG Maintained by MSG. If it exists in the 'BBS' directory when
- MSG starts, the "A=", "AL", "AN", and "AP" commands will be
- limited to the areas listed in this file. This file might be
- appended by using the -F option of CONFMAIL IMPORT. It will
- only be re-written by MSG if it existed when MSG started.
-
- MESSAGE.SAV This is the default filename for the W)rite command. Of
- course you may type any filename you like instead. If you
- specify a different file, MSG will remember it, and that
- file will be the default the next time you W)rite.
-
- MSG.COL This is a small file that contains your color setup. If
- this file is present in the 'BBS' directory, MSG will use it
- to initialize your colors. You can configure the colors
- temporarily or permanently by using the X)change D)ecorate
- option. MSG's default settings are in color (with no
- MSG.COL). The MSG distribution archive contains a sample
- MSG.COL for monochrome systems. If you have a color system,
- you should probably not install this sample file.
-
- MSG.MAC This is the macro definition file. Any line beginning with
- anything other than a numeric character is ignored. A macro
- definition starts with the scan code, and is followed by the
- macro string. Macros are valid only for "0-scan" keys, and
- only when Hotkeys are enabled. See the file MSG.REF for a
- list of definable keys.
-
- MSG.REF A fairly complete list of the keyboard scan codes that can
- be used for macros. This isn't used by the program, but is
- provided as an aid in editing MSG.MAC.
-
- MSGTOSS.LOG This is created by MSG when you enter messages in an
- echomail area. See the description above, and the sample
- MSGS.BAT batch file.
-
- ORIGIN You can use this file to create custom origin lines. If a
- file with this name exists in a message area, the contents
- will be used to create your origin line in echomail areas
- when you E)nter or R)eply to a message. If the file does not
- exist in a given message area, the default origin from
- AREAS.BBS will be used. " * Origin: " will be added before
- this line, and your node number will be added at the end, so
- these should not be included. Up to 50 characters are
- permitted. Do not use graphics or other non-ASCII characters
- in this file.
-
- PASSTHRU MSG doesn't use this file at all, it just creates/deletes it
- with the PassT)hru option in the Z)ap menu. It's a
- zero-length file, which means it doesn't take up any
- additional disk space. It is intended to signify an area
- that contains pass-through echomail messages not used on the
- local system. A batch file could do special processing
- based on an IF EXIST xxx\PASSTHRU statement.
-
- PRIVATE MSG creates/delete this file with the P)rivate option in the
- Z)ap menu. It's a zero-length file, which means it doesn't
- take up any additional disk space. If found, MSG will
- create private messages when you enter or reply in the area.
-
- USER MSG doesn't use this file at all, it just creates/deletes it
- with the U)ser option in the Z)ap menu. It's a zero-length
- file, which means it doesn't take up any additional disk
- space. It is intended to signify an area that is set up for
- users of a BBS, but is not read by the sysop. A batch file
- could do special processing based on an IF EXIST xxx\USER
- statement.
-
- USERLIST.DOG If this file exists, it is searched first when you enter a
- message in your netmail area (area #0). Each line must have
- the exact same length, and have the same format as the
- FIDOUSER.LST file described above.
-
- *.MSG Of course.
-
- Congratulations on reading this far through this rather badly written
- documentation. I hope you'll enjoy this program, and I also hope that
- you'll consider sending in a registration if you like it. I've always got
- an ear open to suggestions or enhancements that you might like to see
- added. Don't patch this program - drop me a note if you need something
- special done. And please report any bugs you may find!
-
- - Ron Bemis, Sysop 124/1113, 214-213-3841
-
- MSG is shareware! That means that if you use it on a regular basis, you
- must pay for it. You are hereby granted a limited licence to use this
- program for a period of one month. At the end of this month, you must
- either register this program or discontinue its use. This program may NOT
- be used in a business, for-profit organization, or corporate environment
- without first being registered. Registration price for this program is $20
- per machine. Registrations should be mailed to:
-
- Ron Bemis
- 9601 Forest Ln #222
- Dallas, TX 75243
-
-