home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Games 1996 January
/
amigagames-cdrom-1996-01.iso
/
userbox
/
publicdomain
/
ncomm
/
ncomm.news
< prev
next >
Wrap
Text File
|
1992-03-09
|
51KB
|
1,133 lines
NComm V2.0: Released the 9th of Mars 1992.
==========================================
This is the first official ShareWare release of NComm. Some persons
probably wonder why NComm suddenly has turned into ShareWare:
First: We've all spent a lot of time and money making new versions
of NComm. After four years of continuous development, I think it's
about time that both Daniel, Trym and I get a little back for
the effort and money we have put into NComm.
Second: This will hopefully insure continued development of this
program. It's a lot more inspiring to work on NComm if you can earn
a few pennys on it. I have got a lot of plans for NComm. A few of
the things I currently want to implement are:
o A complete VT220 emulation
o Custom font support, eliminating the need for special NComm fonts
o An even better script language with numeric variables, arithmetics
and string functions etc.
(Any additional suggestions will off course be highly appreciated).
I would also like to do a major code clean-up, minimizing the use
of memory and making a better interface/look when using OS 2.0. This
will hopefully also make NComm run a little faster.
However, since I no longer intend to work for free, neither of these
things will be realized unless you pay for your version of NComm.
If you want to keep "developers developing", please register your
version of NComm.
The money that we get for NComm will off course be shared just between
Daniel Bloch, Trym Hansen and I. The price for the registered version
of NComm 2.0 is $35 or 215 NOK. Upgrades can be received freely by
calling the NComm Support BBS. Snail-mail upgrades can be received
by sending $6 or 35 NOK for each upgrade.
Please refer to the NComm.doc file for more information.
PS: NComm V1.95 BETA is a version that was never meant to be released
to the public. STAY AWAY FROM THIS ILLEGAL VERSION! It's FULL of
bugs and also lacks many of the features in V2.0.
PPS: Also stay away from the FAKE version V2.003.
Bugfixes since V1.921
---------------------
o The ANSI auto detection code ESC[6n sometimes crashed NComm
o Zoom'ing the scrollback window on the WorkBench screen crashed
NComm when using OS 1.3 (and it wasn't even a bug in 1.3 :-)
o Terminal emulation has been improved. ESC[...A, ESC[...B, ESC[...C,
ESC...D and ESC...;...H now stop at the correct margins. Previously
they didn't, and due to a serious bug in the console.device this
also crashed NComm from time to time.
o NComm would previously not work with the A2232 serial card at any
other speeds than 2400 baud. This has been fixed and probably fixes
some problems with other device-drivers too.
o 7E1 (7 data-bits, even parity, 1 stop bit) did not work if it had
also been turned on in Preferences.
o NComm restarts the script timer after a download/upload. Previously
you had to enter "timeout 0" before a upload or download to prevent
the script timer from messing things up after an upload/download.
o OS 2.0 snapping could sometimes be selected even when using 1.3.
o It's no longer possible to dial more than one unlisted number from
the menu by using the Dial Number function. (Unless you have seperated
the numbers with a '|') This caused several problems.
o You may no longer delete an entry from the phonebook if it exists in
the dialling queue (this caused some *very* funny problems :-)
o NComm didn't remove the status window on WB completely (if you were
using a WB pattern you would see a small area without a pattern)
o The phonebook script now starts as soon as a connection is established.
Previously the script was started too late.
o Spaces were not allowed in path name when downloading with Zmodem.
This is a bug in the XPRZmodem.library but anyway, I fixed the problem.
o Fixed a problem with the ESC[17x G&R command.
o The "PRINTER" script command was broken.
o The "disk full" message sometimes popped up when it shouldn't...
o Uploading/downloading to another dir than the default upload/download
directory did not work when using EXPR or Kermit.
o Hopefully fixed some more bugs in the timer.device dialling routines
o Did not open terminal window on WB screen when loading a config file
o Colors will be translated correctly when echoed locally
o The padding function did not work if the ASCII file started with a CR
(this has been a bug since MsgSend was included :-)
o Menus and text do no longer get garbled when running NComm on the WB
screen and using large screen fonts (set via the OS 2.0 font" program)
o Fixed problems with the XON/XOFF handshaking.
o Fixed several scrollback display bugs
Script changes
~~~~~~~~~~~~~~
o The script execution is now up to 20 times faster than previously.
NOTE: This also means that "label: goto label:" will tie up your
system 20 times more than before so use WAIT "foobar" or the DELAY
command if you want the script to wait forever...
Many new commands have been added to the script language;
o The CHAIN command now remembers variables. Use the command
"CLEARVARS" if you want to clear all variables.
o The DUMP command now takes a filename as an optional parameter.
If you specify a filename, output will be appended to that file
instead of displaying the contents on screen...
Example: DUMP "t:debug_info"
o Added script command "DORX" that executes an ARexx command/script.
Example: DORX "ncomm:scripts/rxread1.ncomm"
o Added RING command that checks the Ring Indicator signal (hardware)
Example: Loop: delay 1 ;Wait one second
if RING then goto Send_ATA
goto Loop ;Repeat the loop
o Added CARRIER command that checks the Carrier signal (hardware).
Example: Loop: delay 1 ;Wait one second
if CARRIER then goto Connect
goto Loop ;Repeat the loop
o Added MENUSELECT function that selects a function from the menu.
Example: MENUSELECT SYSTEM 0 ;Open About Window
MENUSELECT TRANSFER 6 2 ;Selects KERMIT CD
o The character set can be changed from scripts via the variable $charset.
Example: SET $charset = "IBN"
MESSAGE $charset
o Most serial-port parameters can now be set via the variables $length,
$parity and $stopbits. Example: SET $length = "8" ;8 data bits
SET $parity = "N" ;no parity
SET $stopbits = "1" ;1 stop bit
o Variables can now be read from files via the commands VARFILE/READVAR.
VARFILE "filename" ;open file for input
VARFILE CLOSE ;close varfile
READVAR $var ;read line from varfile into $var
Example: VARFILE "s:startup-sequence"
READVAR $firstline
READVAR $secondline
VARFILE CLOSE
MESSAGE $firstline"\n"$secondline"\n"
o You may now delete any WHEN that you like with the command DWHEN.
Specify the WHEN search string as a parameter.
Example: WHEN "abc" SEND "abc"
WHEN "bcd" SEND "bcd"
[...]
DWHEN "abc" ;remove "abc" when checking
o Added REDIAL command that enables/disables redialling
o Added AUTOUP/AUTODOWN/AUTOXFER/RESUME/PADLINES commands that enable/
disable Zmodem auto-upload/Zmodem auto-download/G&R Commands/
Zmodem resume/Pad Blank Lines
All req.library requesters can now be accessed from the script language:
o The script command PALETTE opens up the palette requester.
o The file requester may be accessed via the variable $FILEREQ.
Example: SET $filename = $FILEREQ
IF $filename != "" config $filename
o The string requester may be accessed via the variable $STRINGREQ.
Example: Set $baud = $STRINGREQ
o You may open simple text requesters with the command SimpleReq.
Example: SimpleReq "You selected: "$filename"\n"
o The TwoGadRequest() function can be accessed by using the BOOLEAN
expression SELECTFALSE (you may of course also use the ! (NOT)
operator if necessary)
Example: IF SELECTFALSE "Fast modem?" THEN SET $baud = 300
ARexx Interface added
~~~~~~~~~~~~~~~~~~~~~
I've finally added an ARexx interface. Thanks to Radical Eye Software
for their MinRexx module. The ARexx interface offers you all the same
possibilities as with the new internal script language. I've also
included a few extra goodies that should make it possible to write
very powerful scripts or even an advanced BBS-system in ARexx. The
ARexx interface totally adds less than 13K to the code so I did not
bother to make a special non-ARexx version of NComm.
The port name for the first copy of NComm is 'ncomm', further copy's
will use the port name 'NComm-X', X is 1 or more. The default
extension for ARexx scripts that are used by NComm is .ncomm.
You may use the CLI command line option '-r' to start an ARexx file/
command with parameters. Note that this must be the last option
specified!
There are several other ways to start ARexx scripts. Apart from
using the CLI "RX" command, you may start an ARexx script from
the menu (Amiga-$). You may also start an ARexx script from a
macrokey by entering {arexx} followed by the path/filename.
ARexx scripts may also be executed from the phonebook, just like
normal scripts. Enter the path/filename in the "ARexx" string gadget.
Information about the script will be displayed while dialling and
the script will execute as soon as you are connected to the system.
Please see the ARexx.doc for more information. Also take a look at the
few example scripts that have been supplied with this package.
Serial changes
~~~~~~~~~~~~~~
o Added support for the UUCP function "getty" by including
a "Lock Serial" option. If selected, this function will lock the
serial port when starting NComm and unlock the port when quitting.
o You may now select mark or space parity from the menu.
o I've added a command line option '-e' that enables CTS/DSR checking.
This function was actually included for debugging purposes but I
didn't bother to remove it :-). If this option is specified
NComm will warn you if CTS or DSR is low when opening the port.
Serial.device requires these two signals to be on when opening the
port. If these signals are low, CTS/RTS may not work.
o 1200/75 baud (split speed) support has been added. Thanks to
David A. Varley for sending me the 75-baud output routine. The
code jumps directly on the hardware and shifts out one bit
at a time with precise timing. This unfortunately also means that
this function will only work with the internal serial port.
I've included an option that makes it possible to set the delay
between each bit that is sent since the timing may differ from
machine to machine...
o Shared mode and CTS/RTS handshaking may now be used simultaneously.
However, use this feature with care! Some *NASTY* gurus will appear
if you try to run more than two NComm-copies simultaneously. As
far as I can see, this is due to a bug in the serial.device.
Dialling changes
~~~~~~~~~~~~~~~~
o Messages from the modem are now displayed in a seperate field in
the Dial window.
o I've changed the dialling routine totally. NComm now only aborts if
the code that is received is identified as an "abort code". I've
included codes for "VOICE", "NO DIALTONE", "ERROR", "RINGING",
"NO ANSWER", and "RING" (remote ring). You may also adjust NComm's
tolerance for these codes in the modem setup requester.
o If the script file that is specified in the phonebook does not
exist in the current directory, NComm will check if it exists
in the NComm: directory.
o Info about last logon-time/date will be stored in the phonebook
each time you connect to a board. The info will be displayed in
the dial window or when editing phonebook entries. The phonebook
will automatically be saved to disk at CONNECT if the "log calls"
option has been turned on.
o Added "Redial at logoff" option. If turned on, NComm will start
dialling the rest of the boards that are selected in the phonebook
after logging out from the current system. NComm automatically
deselects boards in the PhoneBook when you connect to them.
o If the entry that you are dialling contains multiple numbers
seperated by a '|', NComm will display info about the call in
progress, for example "(1 of 2)".
o I've added nodelist support via the traplist.library. You may
dial any number from the nodelist by entering a node number instead
of a telephone number. Node numbers may be entered *anywhere* where
telephone numbers are accepted. You may for example enter "2:502/15"
as a number in the phonebook. Use the "Change TrapList Dir" function
to change the nodelist directory.
Modem setup changes
~~~~~~~~~~~~~~~~~~~
o As mentioned previously, most modem result codes may now be entered
in the modem setup menu. These fields also have a "Max" option that
makes it possible to adjust NComm's tolerance for these codes.
Please see the documentation for more information.
o Added option for turning off "Modem not responding" checking.
Note: Normally this is a fatal error and means that your modem
did not respond to the command that was sent by NComm. Please
check your complete modem setup rather than just turning off
this option.
o Included option for hardware CARRIER / NO CARRIER checking. NComm
waits for DCD to go on when dialling and waits for DCD to go off
before logout. This is more reliable than just looking for the
NO CARRIER string (if it shows up in a message, NComm will assume
that the call has ended). NOTE: Your modem must track TRUE CARRIER.
This means that the DCD signal must be "low" (off) in command state
and should not go "high" (on) until a connection has been established.
o Added a "Loop Delay" gadget. This delay-time controls how long
NComm is supposed to wait before repeating the dial loop.
o Changed the text "Auto-Speed" to "Locked Rate" since many people
misunderstood what this function was actually doing. Normally, the
locked rate option should be turned on! If this function is
turned off, NComm will look for the number that is specified
after the CONNECT message and automatically switch to that speed.
Macrokeys changes
~~~~~~~~~~~~~~~~~
o Added four extra gadgets that makes it possible to configure what the
cursor-keys should send when shifted. This can be very handy for
installing Home, End, PgUp and PgDown.
Suggestions for the MBBS FSE... Shift-Up: CTRL-R
Shift-Down: CTRL-C
Shift-Left: ESC [ H
Shift-Right: ESC [ K
o Added '\i' command that sends out the modem init string (this may
of course also be used in scripts).
o Added support for '\xHEXNUMBER' and '\NUMBER' in macrokeys
(can also be used in scripts). This makes it possible to send
codes like '\x1b' (escape) and '\32' (space) from macrokeys.
Scrollback changes
~~~~~~~~~~~~~~~~~~
o The snapping has been much improved. Previously you had to mark
a whole line even if you just wanted to mark a single word.
You may now set vertical positions where the block should
start and end (like the Mark Block function in CygnusEd Pro).
o The search function will now only mark the word that you are
searching for and not the complete line.
o The scrollback is now much faster when you use the proportional gadget
for moving between lines with a long distance between them. This
also means that the "move to end" function now takes no time at all.
The speed increase depends on distance and position in scrollback.
o The scrollback now displays the end of the buffer as soon as the
window opens up.
o IBM graphics that are saved with the "Save block" function will now
be translated to "real IBM".
o Added "Clear scrollback" function.
o The scrollback save functions now asks if they should
Append/OverWrite/Cancel if file exists.
Phonebook changes
~~~~~~~~~~~~~~~~~
o Added two gadgets for moving to next/previous record while in
"edit" mode. I.e, you don't have to return to the main menu if you
want to edit any other records...
o The 'Edit' function has been much improved. If you want to edit
multiple entries, simply select all the entries that you want to
edit and then press the 'Edit' button. When clicking on the 'OK'
gadget, the edit function will automatically display the next
entry that was selected.
o Added a combined "Mark All" / "Clear All" button. If any entries
have been selected, this function will deselect all entries. If
no entries have been selected, this function will mark all entries.
o Added a swap command that swaps two entries. Click on two entries
and then on "Swap" if you want them to change place.
o If an ARexx script should automatically be started at connect
you may enter the path to the ARexx script in the new gadget field
called "ARexx" while in edit mode.
o "Last dialled" information will be displayed while in edit mode.
Turn on the "log calls" option if the phonebook should automatically
be saved when a connection has been established.
Transfer changes
~~~~~~~~~~~~~~~~
o Added support for the Compuserve Quick-B and Jmodem protocols. The
protocols can be referred to as 'Q' and 'J' in the script language.
These protocols use the "xprquickb" and the "xprjmodem" libraries
(not included in this package).
Please note that I have not actually been able to test these protocols
with NComm, but they should work without problems if they follow all
the XPR-specifications.
o You will now get a graphic display of how much of the transfer that
is finished when uploading or downloading (if supported by the
protocols). The CPU loss is kept at a minimum but anyway I've added
an option that makes it possible to turn this feature off.
o NComm now checks at startup if the upload and download directories
exist. If they don't exist, you will get a warning.
o From now on, a file-requester will pop-up if you want to select an
External-XPR library. The pattern "xpr*.library" assures that
only valid XPR libraries can be selected.
o I've added an "Add filenote" option. If selected, NComm will add
a filenote to the file after a download. The filenote consists of
either the boardname or the telephone-number to the board where the
file was collected from. Such a filenote will also be added when
doing an ASCII Capture or when saving the scrollback.
o Added an option for setting the Zmodem buffer size. The recommended
value is 16K but you may enter any values between 1 and 1024 (1MB).
o The "internal multitasking" has been *much* improved when downloading.
When using a 14400 bps modem, the Scrollback is now almost "real-time"
when downloading or uploading...
Terminal changes
~~~~~~~~~~~~~~~~
o Added "Flashing text" option. Text will be displayed as "flashing"
if ESC[5m is received. If this option has been turned off, the
text will be displayed in italics if the style command has been turned
on. This function uses an extra bitplane for flashing the text so
the text display will slow down a little when this function has
been enabled.
NOTE: Due to limitations within the console.device, flashing text
can not be used when using 8 colors.
EXTRA BONUS FEATURE: The cursor will flash too... This is also
due to limitations within the console.device (it's not possible
to change the color used for displaying the cursor).
o I've added an option that forces a window that is 80 character
wide and 24 characters high (80 x 24). Some bulletin board
systems seem to require such a display.
o NComm now understands the codes used for ANSI detection (cursor
position report, terminal report and terminal state) and responds
with the correct codes for a VT100 terminal.
o Added "Line Wrap" option. When this option has been turned off,
text will not move to the next line when hitting the right edge
of the window. This is according to the VT220 specs, so normally
this function should be turned off.
Other changes
~~~~~~~~~~~~~
Added an OS 2.0 version string. You can now use the CLI 'version' command
for checking your NComm revision.
A new host script has been included, made by Nils-Arne Dahlberg. It uses
many of the new features in NComm V2.0's script language.
The CLI '-u' option shows who owns this copy. Hopefully YOUR name is
displayed, if not you had better report this to me as soon as possible.
==========================================================================
NComm V1.92 was released in a hurry and had not been tested very
well (the beta-testers deserve a large flame :-) Many bugs were
unfortunately still left in the code. NComm V1.921 fixes all the bugs
that were reported.
o CTS/RTS only worked if it had been turned on in Preferences (I can
see that JrComm 1.01 has the same problem). The serial device settings
are now completely independent of the settings in preferences.
o Since the input.device (the device that handles all input events)
runs at priority 20, it would be fatal to set the NComm priority to
20 or higher. The maximum allowed priority is now 19. Another very
naughty thing: The A590 harddisk sometimes changes the input.device
priority to 5, so a priority of 5 or more could cause problems too.
When running NComm at a higher priority than input.device, the
scrollback up/down-gadgets never received an IDCMP message when
releasing the left mouse button. Finally, you had to reset your
machine :-( To prevent such hangs, NComm now checks if input.device
runs at a lower priority than NComm and changes the input.device
priority if necessary.
Note: Be careful with setting a high priority! High priorities
often cause big problems, dead locks and so on... The filesystem
normally runs at priority 10, which means that you could get into
trouble when setting the priority to 10 or higher. I personally run
NComm at priority 15 (on an A3000) and have experienced no problems,
but the general rule is: If you experience problems, try setting a
lower priority.
o XPRZmodem library V2.10 should now work with NComm (The serial
input routine returned -1 on timeout so V2.10 did not work.
Thanks to Geir-Inge Høsteng for locating the bug!). NComm V1.9
contains the same bug.
o The download warning message "Not enough disk space" was
unfortunately brought up during uploads when uploading from
a disk that was almost full, or when using Xmodem/Ymodem :-/
o "Next board" msg was misplaced when dialing multiple boards.
o (Due to a bug in AmigaDOS 1.3): It was almost impossible to choose
any options in the "Protocol options" submenu.
o The ANSI mouse function turned itself off when changing resolution.
o Numbers dialled with the "Dial #" function were not dialled
immediately if a Dial window already was open. The window
had to be shut down first.
o Many users experienced hangs when dialling entries in the
phonebook. This normally happened when closing down the transfer
window or pressing any of the gadgets. This bug is probably
caused by a problem with some very old timer routines, so I guess
it has existed for quite a long time. Anyway, I added some lines of
code that should prevent the timer functions from messing things up.
Hope most of the problems are gone now (everything seems to
work nicely with OS 2.0)
o Even parity is not handled correctly by the serial.device. I
have added some code which should make 7-Even-1 work correctly.
(thanks to Jack Radigan for supplying me with the code
originally written by Dave Wecker).
o Upload requester was sometimes brought up twice when using
the Zmodem "Auto Upload" function.
o The "Save Scrollback" function did not save the complete
buffer if the buffer had been filled up.
o Tried to fix the OpenDevice() bug when using OS 2.0. I'm not
100% sure if it's gone, but anyway, thanks to Willy Langeveld for
pointing out a few things that could be wrong!
o Smashed a tricky bug when using "EXPR protocols". If an EXPR transfer
was aborted, this would disable the "auto-activate transfers" feature
for that protocol.
o Amiga-X could not be used within gadgets since this hotkey was used
by the ASCII capture function. The new hotkey for the ASCII capture
function is now Amiga-J.
o ANSI-mouse escape codes will not be sent when closing the "About"
window with a mouseclick.
o Fixed a problem with international keyboards in the scrollback.
o If a script is already running when dialling a new board, the
script configured for use with that board will not be started.
o The 'SCR' and 'CAP' fields were not removed properly from
the status line.
o There is a problem with the 2.0 console device when using snapping.
NComm uses two fonts for supporting IBM graphics: the problem
occurs when characters drawn with the second font get overlapped
by another window. The 2.0 console device will then redraw these
characters with the current font, and the whole thing will look
garbled. Until this gets fixed, NComm will only turn on the
snapping flag when the "2.0 snapping" function has been selected.
This also fixes the problem with screen-flashing when using Emacs.
Unfortunately, this also means that NComm will have to close
the terminal window when selected.
o "ANSI mouse" escape codes were sent when clicking on the file
requester 'OK' and 'Cancel' gadgets.
o 16 color ANSI graphics didn't work and still won't work due to
limitations within the console.device. We will probably have to
get rid of the console.device before we can implement a complete
ANSI emulation. I have decided to leave these things unchanged
until a better VT100 emulation has been added.
o The GURU appeared if the download/upload directory-name was more
than 80 chars.
o By pushing the "Quit NComm" window to the back of the 'About'
window, you would put yourself into a "dead end". NComm now
closes the About window before putting up this requester.
o NComm would crash if 'NComm:' had not been assigned and
the current directory path was > 30 chars long.
o A "Sysop" directory was missing in the Host directory.
The format should be the same as the CoSysOp directory.
o When using the program ConClip, the OS does not automatically
paste text to level III console.device windows. Instead,
Amiga-V results in an escape kode. This escape code much
resembles the code sent when pressing the first function
key, so actually, the first macro key was sent to the
serial port when pressing Amiga-V. NComm now reads the
contents of the clipboard when the correct escape sequence
is received (another 2K of code, sigh...)
o The mark in PhoneBook will be removed when choosing 'Del/Remove'
o Various internal buffers will now be updated when calling a
new board.
New functions/features
----------------------
o Added support for Kermit Finish/Bye/CD server commands.
o Will no longer create a default 'show' field (based on
the previous filename) in the file-requester when
uploading or downloading.
o Possible to expand scrollback window to full screen size
with "Z" (zoom) key.
o Added support for skipping a single file during an
XPR-transfer. I don't know about any protocols that
support this yet, so watch it! By pressing the xfer-window
gadget you will probably abort the complete transfer.
o The "print" function will now ask which device you want
to use as output (you may for example select PAR: or SPEAK:)
o Styles will get turned off at CONNECT
----------------------------------------------------------------------
NComm 1.92 is a vastly modified and enhanced version of NComm V1.9.
It corrects all known bugs of the earlier version. Some changes and
additions have also been made.
Just to make a few things clear...
----------------------------------
NComm V1.92 does NOT contain an ARexx interface
NComm V1.92 does NOT contain an improved VT100 emulation
NComm V1.92 does NOT contain an improved script language
(numeric variables etc.)
If you really need any of these fixes, you will probably be
disappointed, and should look somewhere else. Any of the above
features will take a lot of time to realize. Currently, Daniel and I
don't have much time for working on NComm. Hopefully, the ARexx
interface will be ready within a few months. Anything else will have
to wait for a long time: Don't expect to see all these features
implemented until 1992. Remember: NComm is just a hobbie, we don't
earn a single penny on it. Just forget every rumour you have heard
about NComm V2.0!
However: If you are pretty satisfied with V1.9, this version will
hopefully suit you well. It corrects several serious bugs, and also
adds some features that will make NComm much more comfortable to use.
The NComm Host Script has also been enhanced and should even make it
possible to run a small BBS.
-----------------------------------------
*** What has been changed from V1.9 to V1.92? ***
-----------------------------------------
- Windows have been customized for use with OS 2.0. Text can be pasted
to the console.window using Right-Amiga-V. The hidden depth gadgets are
now compatible with OS 2.0. A "close gadget" will be added to the NComm
CLI window when running 2.0. Added optional "2.0 snapping support",
allows 2.0 users to snap text from the NComm terminal screen using
Right-Amiga-C.
- NComm may now be run on WorkBench, and will then use the new 2.0 gadget
flags if used. NComm may be "iconified" with the new 2.0 window
iconify gadget.
- Added 4 and 16-color ANSI color modes (16 colors will run awfully
slow and should only be used at 2400 baud and below. If you own a
68030 machine, I recommend using the program CpuBlit by Eddy Carroll
for dramatically increasing the screen display performance).
- Added "Close Workbench" option, saves memory.
- More options may now be specified at the CLI prompt;
o -cFILE; Load config file with name "FILE"
o -mFILE; Load macro file with name "FILE"
o -pFILE; Load phonebook with name "FILE"
o -sFILE; Load "FILE" into scrollback
o -d; Disable scrollback adding
- Many new serial.device options have been added. The serial unit and
device may now be selected from the menu. The serial.device can
now be run in "Shared" mode. Baud rates from 300 to 115200 baud
can be selected (but M68000-Amiga's still only handle a maximum of
31250 baud...) An "adjust" option allows you to "fine tune" the baud
rate (old versions of the serial.device miscalculate the baud rate,
and this causes problems with some high speed modems, like the US
Robotics HST). Added "DTR hangup" option for dumb modems.
- "Req.library" is now used for most requesters. This makes NComm much
more comfortable to use. All requesters are started as seperate
processes, and will therefore multitask!
- NComm now has a *complete* XPR library implementation, and even
supports all extension fields (NComm previously only had the minimum
of functions necessary for running XPRZmodem).
- Added support for XPRKermit.library (Kermit protocol) and External
(custom) XPR libraries. Options may be be entered via an init string or
by query. New protocol flags in script language (K == Kermit, E == EXPR).
- The download/upload window will no longer be activated when opened.
- NComm will put up a warning if there is not enough space for receiving a
file onto the current device when an Ymodem-Batch/Ymodem-G/XPR download
is initialized.
- Added Ymodem-Batch/Ymodem-G/XPR support for batch uploads (hold down
SHIFT in filerequester for selecting multiple files).
- Zmodem autodownload is now (optionally) available for use with any
bulletin board system. NComm will automatically jump into receive mode
when the Zmodem header is detected. A Zmodem autoupload option has also
been added (not yet supported by the xprzmodem.library). This option
will automatically bring up a file requester when the Zmodem upload
header is detected.
- Optional icon creation for files downloaded.
- It should now even be possible to multitask internally when uploading or
downloading (Although it works, this is not recommended due to problems
with serial.device and hogging of the CPU)
- New ASCII send option: Pad out blank lines. Will send CR-Space-CR when
CR-CR is detected. This is very handy when uploading a textfile into a
text editor that returns to the command prompt when CR is pressed on a
blank line.
- "ANSI capture" option allows ASCII capture of ESCape codes (were
previously filtered out).
- The scrollback (review buffer) has been greatly enhanced. Added "mark",
"paste", "search" and "save block" options. "Load scrollback" option
allows you to load a textfile into the scrollback. If you "disable
scrollback input", the scrollback may be used as a normal text viewer.
Text may still be marked and pasted. The "load config" function will
no longer delete the scrollback buffer if the sizes don't vary.
Improved the adding of characters to scrollback a bit (GotoXY
sequences and TAB's should work a little better now). The IBM font will
be used in the scrollback if an IBx character set is being used. Much
nicer "up/down" gadgets added. Added "left justify" proportional gadget,
makes it possible to see text that does not fit on a single line. All
proportional gadgets now support "real time scrolling". Scrollback text
routines rewritten, cause faster screen updates. Hotkeys ('/', 'N', 'L',
'S', 'B', ' ') available.
- When you connect to a board, the phonebook selections for that board will
be removed. When you dial boards via the "Dial menu", the chosen entries
will become selected in the phonebook. Information about "config" and
"macro" files will be displayed in the "Dial window" requester.
- The NComm logfile directory may now be changed (NComm previously always
saved the logfile as NComm:NComm.log)
- Optimized phonebook "Sort" routine, should be almost twice as fast now,
and also consumes less memory. The "Print" function no longer truncates
multiple numbers when printing. Transfer protocol and "Del/BS" swapping
can now be selected in phonebook (please observe: all V1.9 phonebook
files will now default to Xmodem, and should probably be changed using
PbConvert.)
- New macrokey option: {script}FILE will execute the script "FILE" when the
macrokey is pressed.
- Added ANSI mouse option (use the mouse for pointing at a specific
location that you will move to).
- Cursor blinking is available as an option.
- Modem Setup window made larger, it is now easier to see which
setup that is being used.
- New translation option: "Destructive backspace". Will translate incoming
backspace codes as BS-SPACE-BS. Assures deletion of the character to the
left of the cursor.
- "Quit verify requester" before quitting NComm.
- A new enhanced NComm Host Script has been included. It was made by
Nils-Arne Dahlberg, and now supports such things as private messages for
all users, private user passwords, more message areas, packing and
download of messages, UL/DL checking, grabbing of bulletins etc.
- Many bugs have been corrected;
o CTS/RTS handshaking now finally *works*! This important
option has not been working in any of the previous NComm
versions.
o Zmodem ACKnowledge was always turned on during Zmodem
transfers! This caused a dramatic loss of speed when using
modems with a slow back-channel, i.e HST modems. So the
Zmodem protocol in V1.9 was really quite slow :-( ACK will
now only be set when transferring to floppy disks, but
can be turned on manually in the options menu.
o Smashed ten Enforcer traps, some of them serious.
o Fixed SERIOUS bug that made NComm jump into
"AMIGA_FIREWORKS_MODE" if boardname was longer than 24 chars.
o Did a complete rewrite of most of the console.device routines and
all the split-screen routines. This was necessary for adding
extended 2.0 support. At the same time, I fixed some bugs in the
previous console.device implementation (NComm would crash if it
had no memory for opening a console.device, and the cursor
sometimes got trashed when running OS2)
o NComm no longer fragments memory! Found a bug in the
clock routines, causing a loss of 40 bytes each time
you started and ended NComm.
o Fixed a bug in the "Save scrollback" function (would not
save files larger than 32K).
o 7-bit character sets were not loaded from the NComm.config file
(previously used US7, but displayed something else in
the status line :-/ )
o It is no longer possible to load a new phonebook during
dialing, since the dialled entry then would become
invalid in the meantime.
o Fixed a few bugs in the IBP and IBM translation tables.
o CLI window that NComm was started from may now be closed.
o Removed View Transfer window. This function crashed 2.0
and was rarely used.
o Caps Lock can now be turned on while using the Scrollback.
Made an attempt to fix a bug that disabled Shift-Up / Shift-Down.
o The Zmodem Resume flag is now updated when loading a new
configuration (this caused many problems).
o Modem Setup "cancel" did not restore Auto-baud flag.
o It is now possible to pick items in the menus from all windows.
Known quirks
------------
1. Some of the req.library requesters look rather ugly (yellow) due to
limitations in the req.library. Since all requesters are started as
seperate processes, a problem occurs when you want to close the screen
(or quit NComm). Most requesters that are open must then be shut down
manually. This is also due to missing features in the req.library
(signalling) and hopefully this will also get fixed in a later version
of this library. The final problem with req.library is that the req.lib
filerequester sometimes trashes the NComm window pointer (this can be
proved by using for example ARTM). Hope to see a new version of
req.library really soon!
2. If the serial device can not be opened when changing device/unit, NComm
will try to open the previous device and/or unit. Sometimes this second
OpenDevice() call causes a crash when using OS 2.0. The problem seems to
be caused by the Amiga operating system, since this does not happen
when using AmigaDOS 1.3. I rewrote the init serial routine from scratch
but have not found any bugs in NComm's handling of the serial.device.
----------------------------------------
*** What has been changed from V1.8 to V1.9? ***
----------------------------------------
- The NComm.config file format has been changed. When upgrading to
the new version, remember to delete all configuration files. The
format has also been prepared for future expansion.
- The NComm.phone phonebook format has been changed due to a new
macrokeys field. Convert your phonebooks to the new format using
the program PbConvert. The format has been prepared for future
expansion.
- FAST Zmodem protocol added, using the external XPRZmodem.library
created by Rick Huebner. NComm now has the fastest Zmodem protocol
available in ANY comms programs - actually faster than VLT, which uses
the same library ;-) Maximum troughput close to 19200 baud using
the serial.device that comes with Workbench 1.3.2. A new transfer
window displays lots of information.
- The Xmodem and Ymodem protocols have been completely rewritten,
and are now ultrafast. Ymodem-Batch and Ymodem-G protocols have
been added (please consult the documentation before using Ymodem-G
with high speed modems).
- Scrollback feature (review buffer) added. Buffer size can be set
from 0 - 512K. View or save text that previously has been displayed
on screen!
- A portuguese IBM character set has been added.
- Advanced NComm Host System using script file. Supports two
security levels, bulletin menu, up and download with user selectable
protocol, configurable up and download directories, immediate
access to uploaded files (optional), message area with both public
and private messages, chat function, hold directory with ZOO
support, logfile, sysop menu with possibility for execution
of DOS commands, sleep disconnect, detection of NO CARRIER...
- NComm now works with multiple serial ports. The serial port
device name and unit is set using an environment variable.
- G&R Host Mode added. Control file transfers from a single machine,
when communicating with programs that support the G&R protocol.
- Macrokeys window has been made better. Step trough the string
gadgets by pressing RETURN, loading a new file won't close the window.
The maximum text length is now 512 characters.
- It is now possible to change resolution and exit NComm when using
the file requester. The requester is now really proportional.
- The modem abort code has been changed for compability with all hayes
compatible modems.
- The windows won't blank out when using Dmouse (actually a bug in
Dmouse but who cares...)
- A problem with redial has been fixed.
- Error messages are displayed if there isn't enough memory for NComm
to open a window.
- NComm now works with an overscan WorkBench screen.
- The files NComm.phone, NComm.keys and NComm.config will be loaded
before libraries and devices are opened. This should make it more
comfortable to use NComm with a single drive machine.
- More hot keys have been added.
- Phonebook settings now have higher priority than settings
found in configuration files used in PB. An error message will
be displayed if the config file can not be found.
- Chopping will be disabled for .ZIP files.
- A lot of changes has been made to the script language. NComm now
has one of the most advanced SL's available;
o New Command; SET - assigns a text (or an earlier defined variable)
to a variable. The pre-defined variable $date contains the current
date and time, $ncomm contains the current version number and the
variable $baud contains the current baudrate.
o New Command; IF ... THEN ... - checks a variable for a
specific string and performs the following function if TRUE/FALSE.
Can also check whether a file exists or not.
o New Command; INPUT - reads input from the serial port and places
it in a variable until a specific string has been read. The
timeout function can be used to define how long NComm should wait
for the terminating string.
o New Command(s); REPEAT<->UNTIL ... - performs what is situated
between REPEAT and UNTIL. If the expression is TRUE/FALSE, the
procedure will be repeated. Can also check whether a file exists
or not.
o New Command(s); WHILE ... DO<->ENDWHILE - performs what is
situated within DO and ENDWHILE until the expression is
TRUE/FALSE. Can also check whether a file exists or not.
o New Command; CLRSTACK - clears the RETURN stack, forgets active
subroutine calls (gosubs...)
o New Command; DLWHEN - deletes the last defined when command.
Repeated usage will succesive delete the "previous" WHEN
command.
o New Command; DUMP - used for debugging of scripts, dumps a list
of all variables and what they contain.
o New Command; ECHO - defines if characters read by the INPUT
command shall be echoed. If echo is ON, text sent by the functions
ASCSEND and SEND will be echoed locally. The output from the CLI
command will be sent to the serial port if ECHO has been turned
on.
o New Command; WRITE - opens a file and appends the following
string to the file.
o TIMEOUT now also concerns ASCSEND. If ASCSEND is halted by a ^S
and no ^Q has been received within the timelimit specified by
TIMEOUT, the script will go on with the next command.
o 20 WHEN commands may now be active simultaneosly.
o Control characters now work well in WAIT, CONVERSE and WHEN
commands (guess there were some problems with this in V1.8)
o WHEN command fixed to "override" previous WHEN commands
containing same string...
Variables can be used everywhere where strings are expected.
It is also possible to concatenate several variables and/or
literals.
- Yeah, we fixed some bugs.
o Changing resolution while using "view transfers" doesn't call guru
o The file transfer block counter is no longer reset at block 255
o A long redial delay won't make NComm hang
o Status line is updated while dialling
o The palette should no longer display strange values
o G&R paths are updated immediately after loading new configuration
o The CLI command will (hopefully) not make NComm hang
o Fixed a small bug in the IBM font FONTS:NComm1/8
o G&R filenames will be translated correctly before usage
o Fixed an irritating problem with detection of NO CARRIER!
o The 13th entry in the phonebook no longer disappears when using
the "New" command.
o Clearing screen while using "split screen" doesn't clear
reference line...
\\\ Thanks to all persons who sent us ideas and bug reports! ///
/// More ideas, (bug) reports and source code heavily wanted \\\
-----------------------------------------
*** What has been changed from V1.01 to V1.8? ***
-----------------------------------------
1. Main New Features.
---------------------
- Scripts. NComm now has an integrated, advanced script language,
which, among other things, enables you to fully automate your online
sessions. Unattended operation is also a possibility. However,
decrease of time used online and thus, online costs, is perhaps the
most common utilization of the power a script language gives you.
- Logfile. By enabling this option, NComm will maintain a log of all
succesful connects. The "Callinfo" utility, which is a standalone
utility, uses this to estimate the phone bill, display statistics,
etc.
- NComm now supports the Ymodem file transfer protocol.
- The G & R protocol has been added. This is an auto up/download
protocol for use with the MBBS system. Automatic up/download without
entering filenames and so on is the virtue of this feature.
- Load / save configuration. By saving your personal program settings
in the file NComm.config, those settings will be used as a default for
subsequent sessions. Also, NComm can be set up to load special config
files when connecting to certain hosts.
- Phonebook. Limited only by available memory, the Phonebook allows
easy keeping, editing, sorting, printing and dialling of all your
phone numbers.
2. Display.
-----------
- Both two and eight colour modes are now supported with full ANSI
colour emulation when using eight colours. However, the two colour
mode may give faster screen I/O on some systems.
- The colours used by the program can be easily adjusted with a
built-in colour palette. Each screen mode has its own palette.
- Interlace mode can be toggled from the 'Screen' menu.
- Status line with On-screen 24-hour clock, showing current time and
time used online, respectively. Setup displayed when not online.
- ANSI x3.64 / vt100 emulation has been improved. Most notably, the
Clear Screen and Set Scroll Region commands have been implemented.
The cursor keys also send the proper codes. As a result of this,
NComm will now work with many screen-oriented programs, e.g. full
screen editors, games, etc.
- NComm can be set to ignore the ANSI control codes for boldface,
italics and underline. Some bulletin boards tend to overuse these
styles.
- The ASCII BELL code can be configured to either flash the screen,
make an audible beep, pop the screen to front, or do all or even none
of the above.
- Reset screen function. This function will clear the screen, turn of
all style settings and reset the colors.
- The program will now work in PAL mode even when using Kickstart 1.3.
- The requester for editing macrokeys now gives you an overview of all
20 keys. This makes editing a much easier task than with previous
versions of NComm.
- Dial requester for dialling phone numbers not in the phonebook.
- Modem setup requester. This lets you customize NComm for use with a
wide variety of modems.
- The file requester has been made much better. Eight devices will be
displayed, with non-available devices 'ghosted'. Ten entries and disk
space free will also be displayed. Parent and pattern functions are
available.
3. Translation.
---------------
- Twelve translation modes are available (both 7 and 8 bits); ISO,
IBM, IBN, US7, UK7, GE7, FR7, SP7, IT7, NO7, SF7 and DE7. If you
choose the IBM or the IBN translation, an IBM PC font will be used.
All special IBM characters will be displayed and translated correctly.
This is also true when using ASCII receive/send, if not the "ISO"
translation selected.
- The program now uses the current Workbench/CLI/Shell keymap, i.e.
NComm now supports all keyboards supported by Commodore-Amiga.
- Eight bit characters are no longer truncated.
- The "Show HEX chars" option is now made easily available.
- The DEL key can be mapped to the Backspace key and vice versa.
Handy when using host systems which expect a VT terminal. This might
be the case when the remote machine runs Unix, VMS or Tops-20, amongst
others.
4. Other changes/new features
-----------------------------
- The program now has a "message upload" facility for uploading mail
to bulletin board systems. This is useful when the message editor on
the BBS does strange things with your message.
- Redial function has been implemented. This makes NComm dial a
number repeatedly until a connection has been established. Alternate
phone numbers for a system can be specified, in which case all numbers
will be tried before starting all over again. It is also possible to
set up a dial queue of several host machines, each of which may have
several phone numbers.
- The serial buffer has been increased from 1K to 4K, in order to
reduce the probability of loss of data when screen I/O is temporarily
suspended. This may be the case when holding down the right mouse
button for a long while, or when printing incoming text.
- NewCli function. By selecting this menu option, NComm will start up
a new CLI on the Workbench screen.
- 7-wire handshaking (RTS/CTS) is now supported.
- 600 baud option has been added.
- The invisible close gadget in the main window has been removed, as
well as the "windowed xmodem" protocol.
- The status window is available from the menu.
5. Known quirks.
----------------
- The ANSI 'blink' command is not fully implemented. Instead the line
is shown in italics.