Dec 312017
Majik Terminal Communications system - version 1.0.
File MTC.ZIP from The Programmer’s Corner in
Category Communications
Majik Terminal Communications system – version 1.0.
File Name File Size Zip Size Zip Type
MAIL.ME 2292 593 deflated
MTC.DOC 31334 10415 deflated
MTC.EXE 88944 40011 deflated

Download File MTC.ZIP Here

Contents of the MTC.DOC file


Majik Term Communications - Warranty Information PAGE 1


Majik Term Software is distributed "AS IS", without warranty as to
performance, merchantability, or fitness for a particular purpose. You assume
the entire risk as to the selection, results, and performance of the
Software. Should this Software product prove to be defective, you assume the
entire cost of all necessary service, repairs or corrections. Nantahala
Software Associates, Inc. and Rick Saunooke will in no way be liable for any
damages allegedly incurred through the use of this software. Nantahala
Software & Rick Saunooke hereby grant you the opportunity to use this software
for a trial period. After which time you have the option of Registering the
Product and continue your use of it. Upon Registration you will receive the
latest version of the Software and be informed of any upgrades as they may
occur in the future.

Nantahala Software & Rick Saunooke hereby grant you the ability to
distribute this Software Product under the following conditions...

1.) All files contained within the archive are distributed
without modification.

2.) No Fee is charged, other than for the service of the
distribution & media cost.

3.) This User's Guide MUST BE DISTRIBUTED !!!

4.) All shareware houses/distribution firms must make EXPLICITLY
clear that the diskette purchase containing the Software Product
has NOT been registered with Nantahala Software Associates, Inc.

Majik Term may NOT be modified in any respect, for any reason, including
but not limited to, de-compiling, disassembling, or reverse engineering of the
Software Product. All program output must never be altered, removed, bypassed
or modified by any means.


The previous agreement does NOT apply to the registered version of the
Software Product. The registered Software Product is protected under the
United States Copyright and Trademark Laws. It must be treated just like a
book with certain exceptions as follows ...

A. - Nantahala Software Associates, Inc. and Rick Saunooke authorizes
the making of archival copies of the registered Software Product
for the sole purpose of backing-up your software and protecting
your investment from possible loss. Nantahala Software and Rick
Saunooke encourage you to do this.

B. - The medium on which the registered Software Product is recorded is
transferred to the customer, but not the title to the Product.

C. - The customer may resell or distribute unmodified copies of the
Software Product provided that the customer has purchased from
Nantahala Software Associates, Inc. and Rick Saunooke one copy
of theSoftware Product for each one sold or distributed. The
provisions of this software license shall also be applicable to
third parties receiving copies of the registered Software Product
from the customer.

D. - By saying, "just like a book", Nantahala Software Associates, Inc.
and Rick Saunooke means that the registered Software Product may be
used by any number of people and may be freely moved from one
computer location to another so long as there is ABSOLUTELY NO
POSSIBILITY of it being used at one location while being used at
another. Since a book cannot be read by two different people in two
different locations at the same time, this software can NOT be used
by two different people at the same time.

If you have a problem with the Software Product please feel free to write
and describe the situation in as much detail as possible. Also feel free to
offer any constructive criticism, or just suggestions, on improving the
program and its development. Please be sure to include a return address or
an E-mail ID.

Nantahala Software Associates, Inc.
P.O. Box 1835 - Acquoni Road
Cherokee, NC - 28719

Or send E-Mail to Compuserve ID 70421,1164.

Introducing Majik Term Communications PAGE 3

The reasons this program came into being were numerous. First and foremost
was the desire to learn more about communications and exercise my programming
skills in another area. I had been writing a business oriented program for
about 4 months prior to starting this.

Secondly, an associate of mine wanted to take the on-line plunge. However,
the only thing he knew about it was from Compuserve commercials and the sales
pitch a Sears salesman gave him about Prodigy. He asked me for a low-cost
recommendation, so I down-loaded a recent copy of Telix for him to check out.
It absolutely blew him away. The problem was not Telix but the knowledge that
was needed to make good use of it. He asked if there was something to get his
feet wet without going way over his head. After a long conversation of what he
thought he needed, the search began.

After spending some time on a few BBS systems I came across some source
code for a terminal emulator that was written in Turbo Pascal. That program
was Suncom by Boyd C. Fletcher. It was very straight forward to use with an
easy interface, but after seeing programs like Telix, well you know what I
mean. Although the Suncom program worked it was still a bit behind the times,
as far as features and implementation in code. So that crazy idea came into
mind. { ** I bet I could do something like that. <--- Famous Last Words. ** }
Weeks later, after some migraine headaches, an enstranged family, some
hellacious phone bills from Online testing, and too much assembly language,
Presto! --------> Majik Term Communications Version 1.

Do not believe that this is merely a reworking of some old code, NO WAY!
I still am not sure how to implement some features I would like, and I'm not
real sure about some I've already done. The only rip-off is the basic
interface design, and that is not a total rip-off. They all really sort of
look the same.

Thirdly, I am involved in a project to start a BBS/Information Service in
my area. I could foresee that others may need the same easy start as my friend
so I committed myself to the project. Hopefully, the project will not be the
cause of my being committed.

The Future Of Majik Term Communications PAGE 4

I do not intend for this to be a one-shot project. The following is a list
of features currently in-the-works, but not quite perfected, or I just haven't
had the time to do them yet.

1.) Time Log - To track your on-line time. I plan on having the provision
to set a maximum amount of time per month. Hopefully this
will help prevent those "Surprise" long distance bills.

2.) Glossary - A list of communications terms for those who are new to
the communications field. I just didn't have the time.

3.) Improved Zmodem - Batch Upload Capability, this is almost done
but was still kind of buggy. Maybe next time.
- Error Recovery, this exists already but doesn't
work that well yet. Sometimes it will abort the
transfer after only a few errors.

4.) Improved Dialer - Repeat dialing, for those BBS's that always
Phone Book seem to be busy when you call them.
- Looping Dialing List, this will use the same
capabilities as the Repeat Dialer, but will use a
list of numbers rather than one.
- Track the number of times a service has been called.
- A Delete Phone Book entry function.
- A Phone Book sort function.

5.) Improved Modem - Support Com 3 & Com 4. These ports are not
Support standard, I probably could have this working but I
was to lazy to open my computer again & again to
change the dip switches.
- Support for modem brands other than Hayes Compatible
modems. The only test modem was a Complete-PC
Communicator. In order to do this I need technical
information, if you can be of assistance, send me
the information at the above address.

6.) More Protocols - I have started some preliminary work on some others
Built-In but they are not "Satisfactory". The following
should be built-in by the next version, I hope.
- Xmodem Checksum
- Xmodem CRC
- Xmodem 1K
- Sealink
- Compuserve Quick B & B+

7.) Better External - I tried many different methods of shelling out to
Protocol DOS and using external drivers. The problem is that
Support each driver uses different methods of launching.
I finally just used the generic Shell-To-DOS method.
Next time I plan on having a specific routine for
each of the different calling methods. Any, and all
information is appreciated; any specific requests
are also welcome.


8.) More Terminal - I have already done some preliminaries, but again
Emulations they need more work, much more.

9.) Scroll Back - I haven't tried to do this yet, other than some
Screen Buffer scribbled notes. The problem is in the amount of
memory I am willing to use on this.

10.) Keyboard Macros - These will be User-Definable, that's the catch.

11.) Script Language - That's a major feature; don't expect it soon.

12.) EGA/VGA Support - 43 and 50 Line screens. 132 Columns.

13.) Area Code - To find out where your calling.

14.) PC-Pursuit - To find a access node for a number.
Lookup I definitely need some information on this one.

Majik Term Communications - Why You Should Register PAGE 6

As I said earlier, developing a program of this type requires the Acid
Test of actually going On-Line. This can be expensive; if you noticed the
address above, I live way up in the mountains. All Information Services are
a long distance call. { ** Here it comes . . . ** }

If you really enjoy this program and find it could be of use, Register. A
registration fee of $ 15.00 is really not that much. If you think that is too
much, send anything that you think will help the project grow. Source Code in
Pascal and Assembler would be of help, although I don't like to rip-off others'
code, it does help to see a different perspective on solving a problem.

As an added incentive to Register, the first 25 people to Register will be
my Beta Testers for as long as they want the job. As my Beta Testers, you will
receive the newest version approximately four weeks before I release it to the
Shareware market. Also, you will never need to pay an upgrade Registration; you
will be a Life Time Registrant of Majik Term.

As another incentive to Register I will give the first 50 people to
Register a 50% discount on another of my projects. As stated earlier I am
involved with starting a BBS/Information Service in my area. The project is a
Non-Profit Organization trying to provide employment for college students on
a part-time basis. Currently we are awaiting 501-C3 status from the IRS. I am
hoping to be Online around January 1992. Any donations to help me with this
project would be greatly appreciated. Once again, write me for the latest
information. Being in the group of the first 50 Registrants you will be able
to subscribe to your first year of access at a 50% discount.

As yet another incentive to Register, anyone who really is a great help
for the continued development of this project will be immortalized in the
future revisions of this document. A great help is considered to be . . .

1.) Being the first person to isolate and report any "Buggy" occurrences
in the program. I can not solve problems if I can't recreate them.
Do not assume that somebody has already informed me of a problem.

2.) Being extremely generous in information. Technical Specifications,
Source Code, or just good ideas or criticism.

3.) Making everyone you know at least try the program a time or two and
give me some feedback to work from, both from yourself and all of
your buddies who try it.

4.) Uploading the program all over the Universe.

5.) Sending more money than any sane person really should.

To Register Majik Term print out the file MAIL.ME, fill in the information
required and include a check which can be drawn in a U.S. Bank in U.S. funds.
Make the Check payable to Nantahala Software Associates, Inc. Mail to the
address above or use the printed envelope, and eagerly await my reply.

Majik Term Communications - For Your Information PAGE 7

I attempted to make this manual as small as possible. Basically you should
just have to read the screen. However, some things need a bit more explanation.
I will go through the Command Keys and give explanations which should be simple
and concise. Some things have there own section which DO require a detailed
explanation. I will also attempt to justify why some things are the way they
are. Please be aware that I use the symbols < and > to enclose a keystroke,
ie. means to press the Carriage Return or Enter key on the keyboard.
means to hold down the ALT (Alternate) key and then press the X key.

First off, here is some technical stuff you may need to be aware of. Not
everyone needs to know this, but then again I don't know you yet.

1.) Majik Term uses direct video memory access for the majority of it's
display screens. I have not made { ** as of yet ** } any attempts
at being Desqview or Windows compliant.

2.) If you received this with a copy of Majik Menu { ** yet another
project of mine ** } the main file, MTC.EXE, must be in the same
directory as MAJIK.EXE in order for Majik Term to be called using
the built-in software hook in the Majik Menu program.

3.) Your modem must be Hayes Compatible and set for operation as either
Com 1 or Com 2.

4.) I have tested the program under DOS 3.3 and DOS 4.01, I recommend
using DOS version 3.3 or later. I have not installed DOS 5.0 on my
machine yet, so if you use it under 5.0 let me know how it worked.

5.) You should have at least 512 KBytes of RAM, I recommend 640 KBytes,
especially if you intend on using External Protocol Drivers.

6.) A Hard Disk Drive is also recommended. If you don't have one yet,
you really should get one. What are you waiting for?

7.) A color display of at least EGA quality is also recommended. Once
again, if you don't have one yet, you really should get one. ANSI
screens are not too impressive on monochrome systems.

8.) In order to successfully use the External protocols you need to
set the DOS environment variable compsec in your config.sys file.
It is also recommended that files be at least twenty, and buffers
be at least ten.

Majik Term Communications - Command Key Reference PAGE 8

Reserved For Future Implementation.

Toggle the backspace method used. The current state of this can
be seen on the status line. ^H refers to the "normal" backspace
key on your keyboard. refers to using the delete key instead
for the same method of operation.

Toggle the Chat Mode on and off. The current state of this can be
seen on the status line. The chat mode is used when a direct serial
interface is made with another system, meaning that your PC is
acting as a dumb terminal.

Activate the Dialer / Phone Book of Majik Term. Refer to the
section following about operating the Dialer / Phone Book.

Toggle the Echo Mode on and off. The current state of this can be
seen on the status line. When active, your keystrokes will be seen
as white and be echoed (repeated) in yellow after every character.

File Upload List. Reserved For Future Implementation. This feature
already works. This will be active once I have my batch upload
procedures working better.

Glossary Of Terms. Reserved For Future Implementation. This is one
of those things I just have not had time to do yet.

Hang Up. Attempt to force a disconnect with a remote system. You
will be prompted to verify your intentions.

Information. Displays the program's version number, author, and
copyright notice.

Reserved For Future Implementation.

Reserved For Future Implementation.

Toggle Linefeeds on and off. The current state of this can be seen
on the status line. If you experience a problem of only receiving
one line of information which keeps being overwritten, try turning
this on. If everything is double-spaced, turn it off.

Toggle Mute Mode on and off. The current state can be seen on the
status line. A note symbol will be seen if sound effects are active;
a blank is displayed if the sound is off.

Reserved For Future Implementation.

Activate the Configuration Options screen. Refer to the section
following about operating this feature. NOTE - The resulting setting
of this operation are shown on the status line.

Reserved For Future Implementation.

This will activate a HELP display with a brief description of each
Command Key function.


Receive / Download Files. Refer to the section following about file

Send / Upload Files. Refer to the section following about file

Time Log. Reserved For Future Implementation.

User Log. Refer to the section following about operating this
feature. NOTE - The resulting settings of this operation are shown
on the status line.

View Transfer Log. This will activate a display of the last 12 file
transfers that were performed using the internal Zmodem protocol.
The Transfer Log contains the name of the file, the date on which the
transaction occurred, the direction of transfer (Upload or Download)
and the place it was sent from or sent to.

This command key will clear the display area.

This command key will exit this session of using Majik Term. The
current configuration, phonebook, and log files will be saved
automatically. You will be prompted about your intentions before the
termination takes place.

Reserved For Future Implementation.

Toggle the state of the Zmodem Download Detection. When active, Majik
Term will automaticly initiate a Zmodem Receive using the internal
Zmodem protocol. If you wish to use a External Zmodem protocol, you
should disable this feature. This will always default to off when
starting the program. NOTE - The current setting of this feature
can be seen on the status line.

Majik Term Communications - Configuration Options PAGE 10

Step 1 - Set the appropriate Com Port, Baud Rate, Data Bits, and Stop
Bits in accordance with your modem and the system that you
wish to communicate with. The current settings are visible in
the lower right corner of the configuration screen and on the
status line.

Step 2 - Activate the advanced options section. It is recommended that
you experiment with the Receive and Output buffer sizes until you
arrive at a setting optimal to your particular system. The default
values of 2048 Bytes are usually O.K. for most situations.

The flow control options should be set in accordance with any
specifications in your modem manual. The hard-wired option need
only be set if using Majik Term to allow your computer to act as
a dumb terminal, ie. PC to PC connection or PC to Mini/Mainframe.

Line error reporting is usually unneeded, however this can be
useful if you are experiencing problems getting operational. Hiding
the Status Bar is totally a matter of taste. My personal preference
is for it to be visible. I also use the backspace key rather than
the delete key. The tone dialed option is dependant upon your
telephone. Most touch-tone phones are switchable between pulse and
tone dialing. Tone dialing is preferred.

Step 3 - Leave the advanced screen and activate the Set File Paths
Option. There are three entries to fill. The first is where the
program will look for its config, dialing, and log files. The
Upload and Download paths are a matter of preference. After you
have set these options, save the configuration. If all is well,
the message "Majik Term Communications Ready." will appear at
the top of the screen. If this message does not appear, modify
your configuration settings as needed.

* PLEASE NOTE * - When you exit the configuration section of the program,
Majik Term will reinitialize the Com Port to the
specifications you have set. If this is done when you
are On-line, you will more than likely kill the link you
had with the remote system. Keep that in mind.

Majik Term Communications - Dialer / Phone Book Operation PAGE 11

The Phonebook has five general operations. The phonebook itself contains
the following information on each entry. The name of the entry, the number to
call, the baud rate, data bits, parity, stop bits, and the date last called.

* PLEASE NOTE * - The baud rate, data bits, parity, and stop bits will be
change to the settings in the Phonebook when the dial command is invoked. This
will take place automaticly regardless of the current settings.

ial - Dial the specified Phone Book entry. Press the key to
abort this operation. See above Note.

dit - This will allow the modification of a Phonebook entry. You will
be prompted for . . .

NAME - Enter a name appropriate for the entry,
ie. Joe's Bulletin Board

NUMBER - Enter the phone number, including the area code if
it is needed, ie. 1-704-555-5555.

list type functions. Highlight the appropriate selection
and press the key. The most common settings are
highlighted by default.

ave - This will save the current Phone Book. This is recommended every
time you modify the Phonebook.

rint - This will produce a hardcopy of the current Phone Book if you
desire one, ie. Give to a friend.

eit - Leave the Dialer / Phone Book.

Majik Term Communications - User Log Operation PAGE 12

Majik Term contains two user log options . . .

1.) Disk File - This option will capture all information to a file on disk
for later review. This is the recommended setting. If you
wish to print a portion at a later date you will be able to
do so. Upon activation the default file name is USER_LOG.MTC.
If you wish to use this file, press enter, if not backspace
over the filename and enter one you wish to use. The program
will check if the file exists; if it exists, you will be asked
if you wish to over-write it. If you over-write, the existing
file will be erased and replaced with the new information. If
you choose not to over-write, the new information will be
appended onto the end of the existing file. * NOTE * The User
Log is a standard ASCII file.

2.) Printer Log - Similar to the Disk File except the information is directed
to the printer. This is not recommended, as it can be a waste
of paper. It is more desirable to save to disk and print only
a selected portion.

3.) File & Printer - This is not an actual selection but a matter of condition,
meaning both the Disk & Printer Logs are active.

* NOTE * - The current settings of the User Log are visible on the left side of
the Status Bar. If No options are in operation, the Status Bar will simply say
"Majik Term".

Majik Term Communications - File Transfers PAGE 13

Majik Term Communications contains an internal Zmodem Protocol, and has the
ability to shell-to-DOS to use external protocol drivers. It is recommended
that if you use external drivers that you execute them from a batch file. Refer
to your Operating Manuals for the protocol to do this.

Upload - To send a file to a remote computer system. After selecting the
Upload Option (ALT+S), you will be prompted for the protocol to use. If you
select the Internal Zmodem, you will then be prompted for the file to send.
Currently the Internal Zmodem protocol is limited to sending only single files.
The file you select should be present in the upload path you set in the
Configuration section of Majik Term. If the file exists, the program will
initiate the transfer. If the transfer was successful the Transaction Log will
be updated.

Download - To receive a file from a remote system. After the remote system
has been made aware of your intentions and the file/files have been selected,
a number of actions can occur. If the Zmodem download detection is active and
the transaction is a Zmodem transfer, Majik Term will initiate the download
using the internal Zmodem Protocol. If the Zmodem download detection is not
active or a Protocol other than Zmodem is used, you must select the Download
Option (ALT+R), you will then be prompted for the protocol to use. If it is a
Zmodem transfer you can select the internal Zmodem of use an external one. The
Internal Zmodem is capable of batch receives. Upon successful transfer the
Transaction Log will be updated. The files themselves will be stored in the
Download Path you set in the Configuration section of Majik Term.

Majik Term Communications - In Closing PAGE 14

Although far from perfect and not quite commercial quality, Majik Term has
been an extremely educational experience for myself and others. The future of
this project is in your hands. Any and all feedback is welcome and needed in
order for the program to improve.

Please keep in mind that Majik Term is not Public Domain. Although you
are given the right to distribute, please REGISTER and keep the concept of
low-cost software alive. There are very few commercial companies which let you
try a fully functional, non-limited product before you buy. Also keep in mind
that through your feedback and registration you will be at least partly
responsible for the program's development. REGISTER.

See Ya ! - Mr. Rick

 December 31, 2017  Add comments

Leave a Reply