CTE International
via Sevardi, 7
42100 Reggio Emilia, Italy
Tel 39 522 516660


CB-COM: a system for Radio Data Exchange by PC


MANUAL TO THE AX.25 TERMINAL SOFTWARE FOR IBM PC


TABLE OF CONTENTS

1.     INTRODUCTION
1.1.   Quick Installation
1.2.   Detailed Installation

2.     CB-COM PROGRAM OVERVIEW

3.     FILES FOR OPERATION
3.1.   The Memory Resident Program L2,EXE
3.2.   The Terminal Program SCC.EXE
3.3.   The parameter compiler PARA.EXE
3.4.   Supplemental Parameters
3.5.   Adjustment of Parameter

4.     SCREEN STRUCTURE
4.1.   Characteristic Keys

5.     COMMANDS
5.1.   TNC Commands
5.2.   Timer Commands. Layer 1 and Layer 2
5.3.   Additional Commands
5.4.   Commands to Store and Send Files to Hard/Floppy Disk

6.     DISPLAY OF INFORMATION

7.     REMOTE OPERATION
7.1.   Unproto Transmission

8.     RETROSPECT AND PROGRESSION
8.1.   Comments to the AX.25 Protocol

9.     TROUBLESHOOTING

10.    APPENDIX
10.1.  Connection between CB-COM and transceiver
10.2.  Summary of Commands
10.3.  Summary of Characteristic Keys
10.4.  Additions to the CB-COM software navigation



1. INTRODUCTION

The typical packet-radio station consists of transceiver, modem (MOdulator
- DEModulator), computer and terminal.

The word "packet" refers to the short bursts of data being transmitted
rather than a continuous data stream. The coupling of a signal at the
transceiver takes place at the AF (audio frequency) side. The modem
transforms the received tone sequence into a digital L-H sequence, or it
creates out of the digital data stream of the computer the appropriate AF
frequencies which are 1200 and 2200 Hz, according to the standard Bell
202.
The information is being transmitted using the NRZI (Non-Return to Zero,
Inverted) code by representing a binary 0 with a flank vault from H to L
or from L to H. When sending a binary 1, the level does not change.

The difficult task during keying is to avoid a phase leap. On the
receiving side, using 1200 Baud and a reference frequency of 1200 Hz, the
demodulator has to identify a frequency change and to convert it into a
logic level in less than a period.

The CB-COM utilizes a special circuit which can be programmed for the
various tasks. It has its own quartz-time basis, a divider for the
transmitting.

The computer together with the CB-COM program takes care of the processing
of the data stream vla a serial port to the CB-COM. The information is
passed on to the modem to be transmitted .

Currently, the version 2.0 of the the AX.25 protocol is being used. This
protocol describes the level 2, the so-called link layer of the ISO-7-
level model.

The program contains a comfortable terminal program which depicts the data
and announcements on the screen.

To start the system, only connections to the transceiver (microphone and
speaker) and to the computer via the RS 232 (serial port COM1 or COM2)
have to be made (see the quick start guide included).



1.1 Quick Installation

Step 1: Refer to the quick start guide supplied with the modem to prepare
the necessary cable between CB-COM and radio as well as the connection to
the computer.

Be sure to log your call sign at the setup, and to set the correct serial
port (COM1 or COM2)

You are now ready to connect another station, etc. Be sure to make the
right adjustments to the squelch (watch QRV/SEND/RECV indicator) and to
the audio level of the radio.

Read through the next part to gain more insight and in case of problems
with the above steps.

1.2 Detailed Installation (for expert user)

Only little needs to be done for a primary installation. For an initial
running, the following parameters should be set in file SCC.INI using an
editor:


* The port COM1 or COM2.
This is being defined in SCC.INI at approx. line number 30 and has been
set to COM1 as customary.

* The callsign.
The parameter MY (MYcall) can also be found in SCC.INI approx. at line 52.
The own callsign has to be inserted here. Other calls that are present may
stay there and become active only during appropriate operation.

All other parameters have been set to fairly reasonable values and have to
be adjusted over time according to taste and situation.

Subsequently, only L2.EXE has to be started and after that SCC.EXE and the
system is ready to run.

Terminate the program with Alt-X.

When entering CB-COM in the directory of the files, the program will start
automatically.

Don't forget: Every command has to be preceded by a colon which can be
invoked by keying either Esc or Tab and has to be removed with Esc, Tab or
Del when sending text.

Summary:

1. Set individual parameters in file SCC.INI (necessary only at the start
of operations and after major change of parameters).

2. Start of the resident terminal portion L2.EXE (changes in SCC.INI are
being automatically translated into machine language).

3. Start of terminal portion SCC.EXE.

4. Terminate SCC.EXE with Alt-X.

5. Terminate L2.EXE by entering OFF.

Steps 2 and 3 can be completed by running the batch file CB-COM.

2. CB-COM PROGRAM OVERVIEW

SCREEN INPUT. Every input line may be used again as input by moving the
cursor to the appropriate line and entering it with Return.

THREE-WINDOW SCREEN: TX, RX and monitor. The cursor may be positioned at
any of the three windows. The size of the area can be changed during
operation which scrolls the text up and down.

BACK SCROLLING of each window.

Conventional MULTICONNECT feature including FILE TRANSFER.

SUPPORT of EGA-VIDEO MODE.

STORAGE and RETRIEVAL of SCREEN CONTENT after leaving the program.

3.FILES FOR OPERATION

3.1. The Memory Resident Program L2.EXE

L2. the central portion of the CB-COM system, is a memory resident
program. This implies the program runs in the background while the
computer may be used for other tasks. L2.EXE is being started by entering
L2 and (Return).

During activity of L2 a rectangle is blinking in the upper right corner of
the screen. This blinking can also be used as a control for correct
functioning of the program. In case the blinking does not appear, refer to
chapter 9, trouble shooting.

The following takes place internally: The program reserves a portion of
the computer memory for itself. This part of the memory then is not
available for other, later loaded programs.

L2 takes up approximately 90 kByte which means that memory intensive
programs may not be possible to run in computers with the common 640 kByte
memory. To check the accessible memory, use the DOS command CHKDSK or MEM.

L2 contains the complete terminal software, the AX.25 run and part of the
command process. For all the other program parts the resident installation
of L2.EXE is necessary, otherwise it will be requested. Layer 2 is
addressed with INT 47h and its recognition signal is deposited at INT 49h.

The computer, together with the connected CB-COM and radio, behaves just
as a standalone TNC as soon as L2.EXE is activated.

However, the incoming traffic will not be displayed until SCC.EXE has been
started.

3.2. The Terminal Program SCC.EXE


After running SCC. a three-divided screen becomes visible.

As previously explained,L2 serves to receive and to send packets, to
direct connects and disconnects, i.e. the complete control of the lower
AX.25-protocol layers. Now, only a user interface needs to be added that
displays the received and sent data. This is being taken care of with the
terminal program SCC.EXE.

Each command has to begin with a colon in the first column of a line and
to end with (Return). Lines without a colon at the beginning are being
sent as text. If a station is not connected such an input is being ignored
except for the F10-screen which will send the line as "unproto text".

- Commands may be entered from any part of the screen, including the
transmit and monitor windows. The only condition is the colon in the first
column of the line.

- The colon may be entered also with the Esc and the Tab keys. Using those
keys puts the colon automatically at the beginning of a line. Repeated
keying of Esc and Tab removes the colon again.

- Commands may be abbreviated. The combination of essential (capitals) and
non- essential (small) letters is described later.

- A command entered without a parameter, e.g. ON, OFF or value, will
display the current state.

- When writing text to another station, it is not necessary to key (Enter)
at the end of a line. The last word will be automatically pulled to the
next line and each complete line is being sent off unprompted.

- Most of the parameters are preset in SCC.INI. The specific default
values are targeted at common settings.

3.3. The parameter compiler PARA.EXE

PARA.EXE is the parameter compiler which produces the machine readable
file SCC.PAR from the text file SCC.INI. During this process, SCC.VID is
being erased to avoid a possibie incompatibility .

The description above illustrated how the parameters are placed into a
text file to initialize the program. As soon as the adjustment of the
parameters is finished, the information has to be converted into a format
that can be easily read by the machine. This process takes place
automatically after each change in SCC.INI.


In case of errors check whether all commentaries are preceded by a
semicolon. When errors occur, reasonable values are placed automatically
on the appropriate line.

Attention: Almost all parameters are modifiable on the terminal screen,
except for fundamental initializations such as video card, etc. These
changes are stored only in the machine readable part of SCC.PAR when
terminating the program. Therefor, important parameters should always be
changed in SCC.INI, using an editor.

3.4. Supplemental Parameters

OFF.COM - The "clean-up service"
It removes L2.EXE from the memory, resets the interrupt vectors and stores
SCC.PAR if necessary.

SCC.INI - The set-up file.
All critical operation parameters are being stored here. The file is
essentially self-explanatory and is being executed from PARA.EXE in form
of a command file. It is being recommended to review this file using an
editor and to make adjustments to individual needs. This ASCCI file
contains the default parameters of the user.

SCC.VID - Video storage file.
The content of the screen is being stored here if one leaves the terminal
SCC.EXE with the command Alt-X. This file is being erased through changes
of the video format.

SCC.PAR - Machine readable parameter file.
All operation parameters are stored here and can be read and written by
L2.EXE. SCC.PAR is being created by PARA.EXE which compiles the ASCII file
SCC.INI into a machine readable parameter bloc. This results in speed and
memory advantages.

SCC.HLP - Help page for the terminal operation. The command:"H" displays
help information.

3.5. Adjustment of Parameter

It is good practice to make a back-up copy of the master disk before
changing individual files.

The text in brackets "[ ]" in below explanations is only for illustrative
purposes and not part of SCC.INI .

The default parameters have been set in file SCC.INI. This file is self-
explanatory and may be modified with the CBED editor which is supplied on
the program disk. It is not recommended,however, to use a word processor
since format and print commands could jeopardize the correct functioning.


Warning: The changed information for the terminal becomes effective only
after restarting L2 which causes the parameters to be converted into a
machine readable format.

Warning: Any change of SCC.INI causes SCC.PAR, which is the parameter file
for operations to be erased. Therefor, adjustments made while the program
runs will be deleted. Important modifications, which one does not want to
change during operation, should always be made in SCC.INI.

Almost all parameters which have been set in SCC.INI may, however, be
changed during operation. Again, modifications which contain
initialization values such as the choice of video adapters become valid
only after restart.

Initialization File SCC.INI for the CB-COM (for PCs)

The structure ot this file is comparatively tolerant.Spaces and blank
lines may be put at any place, commands given in any sequence and
capitalization is being ignored. However, data entered are not evaluated.
It is therefore wise to backup this file at the very beginning in order
to have a reference in case of a crisis.

The parameter file is being read by PARA.EXE, which again is called upon
by L2.EXE whenever SCC.PAR cannot be found.

Exactly the same parameters are stored in SCC.PAR, but,in machine readable
format,which can be read and created much faster.

Constraint Values for Dynamic Memory Administration and Port Use

tports     7  Number of available ports
              (maximum nine ports, one port for UI/monitor)
              [The number of ports is being set with tports. One of them
              is the monitor port which fills the entire screen. The
              number of ports effects the number of lines that can be
              scrolled back at each port. The default value of 7 ports and
              1 monitor allows for approximately 200 lines.]
buffer    40  Total number of AX.25 buffers in frames
mbuffer   10  Number of monitor buffer in units of 330 Bytes
rbuffer    8  Number of receive buffers, times 330 Bytes
tbuffer    8  Number of receive buffers, times 330 Bytes
              [These values determine the reserved memory of the sistem.
              The above values have shown to be reliable in the past and
              should not be changed. (The number for buffer has to be
              larger than the total of mbuffer, rbuffer and tbuffer
              combined.)]


HDLC (High-level Data Link Control) Parameter

rs232      1  Number of interface (COM 1 or COM 2)
              [This parameter sets the interface which connects the modem
              to the computer. Unfortunately, it is not possible to define
              COM 3 or COM 4 since those interfaces cannot generate the
              interrupts that are necessary for the  program to run.]

Video Setup

[The general screen display and the video card are set up in this part]

dllines    8  Height of transmit window, in lines
d21ines   20 Begin of monitor window, in lines
             [These two lines determine the division between transmit window
             (upper section), receive window (midsection) and monitor window
             (lower section)]

vadapter   2 Video-Type: O=Automatic, 1 =Mono, 2=Color, 3=LCD
             [This parameter accommodates the existent video card of the
             computer. In setting 0, the correct card should be recognized.
             In case of an EGA or VGA card, the system switches into the
             43-line mode. It this is not desired or does not work (some
             clones), the correct value has to be set. In setting
             2, 25 lines are being displayed, even when using EGA or VGA.]

vcolumns  80 Set screen width (Best at 80)
vlines    25 Set screen lines (EGA/VGA) (Best at 25)
             [Lines and columns may be set for special cases]

saveports  0 Number of ports whose screens are to be stored
             [When terminating the program, screens may be stored (except for
             the monitor screen). This, of course, takes time, in particular it
             files are  written to floppy disks. Therefore, if speed is
             desired, set parameter to 0]

wwrap     80 Position of automatic word-wrap and carriage return after 80
             (Best at 80) [Unfinished words are wrapped automatically to the
             next line below at the position and the finished line sent off.]

mheader   on Carriage return between monitor address and info tield
             [This concerns the monitor. With MHEADER ON, AX.25 address field
             and the actual packet info are displayed on two different lines,
             while MHEADER OFF presents both next to each other. The choice is
             a matter of taste.]

German   off German on/off with German keyboard (OFF in US)


remote    on Permits remote control with //command
             [This command allows another station to remote control the system.
             Except for :OSHELL (exit to DOS), all commands may be carried out.]

Callsign Settings

dcall    DX2 Callsign for Digipeater

connect test Leave at "test". (Used for quasi-self connect 0)

mycall Test1 Test2 Set your callsign

cnot nocall tnc2c pk232 Connect request ignored for callsigns
             [DCALL is the systems digipeater call. The computer responds to all
             the callsigns under MYCALL. The first callsign is used in a
             connect effort. Is an attempt made to connect the same station a
             second time, the SSID of MYCALLs is raised by one.]

Text Settings

ctext  Connect text (maximum 80 characters wide)
             [This text will be sent whenever another station connects (welcome
             message). The text can be edited while running CB-COM.

Layer-2 Parameters, Valid for all ports

mselect 0 Monitor 1 = QSO 2 = MFROM 3 = MT0
mcalls DB0XYZ Monitor-Selected Callsigns
             [The commands indicated may be used to trace certain stations
             on the monitor or to ignore them.]

track     20 Selects FRame ACKnowledgment timeout (timer 1)
resptime   2 RESPONSE timer, 100ms steps (timer 2)
linktime  12 Inactive-LlNK timer, 10 sec steps (timer 3)
maxtrame   4 Selects MAXimum number of outstanding unacknowledged packets
paclen   256 Selects number of Bytes per packet which torce packet
             transmission (1..256. reduce for bad links).
retry     10  Number of times unacknowledged frames are retransmitted
ipoll     60  Max. info length for IPoll (best left at 60)
tinfo      4  Info timer, 100ms steps (best left at 4)
tquit     12  quit timer, time waited for data ACK on Quit (Best at 12)
              [These are the corresponding timers for layer two.]

Layer-1 Parameters

dwait     10 Transmit delay to avoid collisions (x 40mS)
txdelay   33 Delay between keying TX and transmit packet
tail       2 Transmit delay tail before returning to receive
beacon     0 Beacon timer in seconds. 0 = no beacon
badress beacon DBOABC DBOXYZ
Beacon address: BEACON <DIGI> <MYCALL>
btext test   Set your beacon text. (BText up to 80 characters. The text
             can be edited while running CB-COM. Beacon 900 transmits every
             15 minutes.)

Screen Attributes (Colors)

Foreground and background colors are entered as follows: Set 0 to 7 use
Hex above 7, i.e.: 7 5 = f

cselect    0 Settings for monochrome video (MDA, Hercules)

Set below only for mono display cards

sattrib 0 07 TX Data Color
sattfib 1 47 TX/RX Status Bar Color
sattrib 2 c7 STOP Indicator/Unviewed Data on Port Color
sattrib 3 07 RX Data Text Color
sattrib 4 70 Color for Port Status Bar
sattrib 5 70 Color for Unconnected Ports
sattrib 6 7f Color for Port Selected (in use)
sattrib 7 07 Monitor: Color of Callsigns
sattrib 8 07 Monitor: Color of Information
sanrib 9 70  Color of Control Characters

cxlect 10 Attributes for LCD with CGA Emulation Laptops

Set below only for LCD laptops with CGA emulation

sattrib 0 0F TX Data Color
sattrib 1 78 TX/RX Status Bar Color
sattrib 2 F8 STOP Indicator/Unviewed Data on Port Color
sattrib 3 0F RX Data Text Color
sattrib 4 7F Color for Port Status Bar
sattrib 5 70 Color for Unconnected Ports
sattrib 6 0F Color for Port Selected (in use)
sattrib 7 07 Monitor: Color of Callsigns
sattrib 8 0F Monitor: Color of Information
sattrib 9 78 Color of Control Characters

cselect 20 Attribute for Color Displays (CGA,MCGA,EGA & VGA)

Set below only for standard color display (CGA,MCGA,EGA & VGA)

sattrib 0 02 TX Data Color
sattrib 1 47 TX/RX Status Bar Color
ssttrib 2 c7 STOP Indicator/Unviewed Data on Port Color
sattrib 3 07 RX Data Text Color
sattrib 4 47 Color for Port Status Bar
sattrib 5 40 Color for Unconnected Ports
sattrib 6 57 Color for Port Selected (in use)
sattrib 7 03 Monitor: Color of Callsigns
sattrib 8 02 Monitor: Color of Information
sattrib 9 04 Color of Control Characters

- Foreground
- Background

0 = Black     8 = Gray
1 = Blue      9 = Bright Blue
2 = Green     A = Bright Green
3 = Cyan      B = Bright Cyan
4 = Red       C = Bright Red
5 = Magenta   D = Bright Magenta
6 = Brown     E = Yellow
7 = White     F = Bright White

- If these values are used for foreground in piace of 0....7 the
applicable attribute will flash.

[This section allows the user to modify all parts of the screen according
to taste. The numbers behind CSELECT must not be altered. The individual
areas of the screen may be changed in color for the background with the
first value and for the foreground with the second value of SATTRIB. All
these parameters become functioning only after restart of L2.]

4. SCREEN STRUCTURE

The screen is divided into three windows.

The 43-line mode is turned on automaticslly as soon as an EGA card is
being recognized. A color card causes a color display with 25 lines and
with a monochrome card, bright-dark attributes are being used.

The UPPER WINDOW is being used for TRANSMITTING,

A colon in the first column becomes a command, in any other column it will
be transmitted.

Only on port 0 (change with E10) unproto is being transmitted, as a rule,
transmit data are being gobbled up if one is not connected.

The first status line displays the state of the modem, the link state
according to X.25 (only states 1..7) and various operation parameters
which serve mainly for debugging.

mem = Number of buffers in the free memory chain.
In  = Possible lines that can be scrolled back.
n2  = Retry-repeat counter (actual state)
o   = Number of transmitted but not confirmed packets.
fr  = Display of the current FRACK time of the particular link (round-trip
      delay).
k   = Layer- 1 channel at this port.

Then follows the time and at the end of the line is the actual port number
being displayed .

In the MIDSECTION is the RECEIVE WINDOW.

There follows the second status line which displays all the ports and the
corresponding connect partners. The end of this line shows the current
file position dunng file send and receive.

The LOWER WINDOW contains the MONITOR displaying the traffic on the
channel. The number in front of each frame is the layer-1 channel number
(the modem number, so to speak). R indicates received frame and T
transmitted frame.

SCC.EXE has to be started with SCC at the DOS prompt after L2 has already
been activated. The for terminal programs typical three-divided window
appears.

The division consists of two status lines which explained below.

Upper status line:

QRV AK1A# Disconn mem=039 Ln = 147 n2 = 10 o = 0 fr = 20 k = 0 03:58 2   I
1   2     3       4       5        6       7     8       9     10    11  12

The following information with respect to the individual subjects:

These symbols display the mode of the system:
QRV:  Ready to receive, but no signal (squelch is closed)
RECV: System is receiving (squelch is open)
SEND: System is transmitting

In case the output is blocked because the cursor is in one of the lower
windows or SHIFT-TAB and " + " have been keyed the QRV/RECV/SEND display
starts blinking.

2 The own callsign (with SSID) is indicated here.

3 Present state of port. Here are the following possibilities:
Disconnected    Canceling of connection
Info Transfer   Flow of information
Frame Reject    Violation of protocol
WAIT ACK        Poll-packet sent
Reject Sent     Received info with invalid number

4 mem informs as to number of free buffers. This may be set in SCC.INI if
necessary.

5 In indicates number of lines that can be scrolled back. The value of In
is depends on the size of the computer memory and number of active ports.

6 n2 is the actual state of the retry-counters. A value close to O
indicates imminent disconnect.

7 o is the number of sent but unconfirmed packets.

8 tr shows the current Frack time. It represents the number of seconds the
system waits for an acknowledgment before trying again to get an
acknowledgment. Frack is adjusted automatically depending on data flow.

9 k indicates channel number that the port uses to send data. The CB-COM
version utilizes number 0.
10 The actual time. picked up from DOS.

11 The present port number is given here.

12 I stands for Insert mode and R stands for Writing over text

The lower status line holds the list of all ports and the stations
connected and those in the process of being connected. The number of ports
may be set in SCC.INI (maximum 8). When sending files, the actual position
in the file (received and transmitted bytes) is being displayed at the end
of the status line. Whenever data arrive on a port that is not selected.
the callsign below the individual port begins to blink.

4.1. Characteristic Keys


The individual ports may be changed wlth the function i'keys. F1 switches
to the first port, F2 to the second, F3 to the third and so forth.

F10 moves to the monitor port. This window takes up the entire screen.

F9 lets the cursor move from the TX window to each of the windows below
and back. In addition, the port-function keys IF1..F7/F8i will move the
cursor back to the TX window also.

The key "-" on the numeric keypad has the same function F9 has.

Also, keying ALT together with numbers 1 (TX window), 2 (RX window) or 3
(monitor window) moves the cursor to the appropriate space.

The position of the dividing line of the windows i.e, the size of the
windows may be changed with the following key strokes: The upper line is
shifted upward with CTRL-HOME and downward with CTRL-END.

The lower line is shifted upward with CTRL-PGUP and downward with CTRL-
PGDN.

Please note: The TX window should hold at least two lines. Otherwise,
possible announcements of the program may be missed.

The above is applicable for the F10-monitor screen, except that there are
only two windows instead of three.

All information that moved off the screen because of scrolling over the
top of the windows may be made visible again by placing the cursor into
the appropriate window and using the cursor keys or the PGUP and PGDN
keys. Depending on the number of ports and availablea memory, about 200
lines per port can be stored.

Warning: As long as the cursor occupies the RX window, to output of
incoming information is stopped. The RECV display blinks. The output
continues only after the cursor has left the RX window again.

The output of incoming data may also be canceled by keying SHIFT and TAB
or entering " + " on the numeric key pad. The same blinking of the RECV
display takes place.

The program has to be aborted with ALT-X.

CTRL-combinations, such as CTRL-Z are displayed on the screen but not
executed. This has to be done by striking the ENTER key.

With the key INS one may toggle between turning insert mode off and on as
it was mention already before.

Summary or all the keying combinations-

F1..F8      switches between the individual ports (depending on number).
F9          or "-" on the numeric pad, moving from one window to another.
F10         Monitor and unproto screen.
ESC or TAB  switches between command mode and data port, it enters or
            deletes a colon in the first column.
CTRL-RETURN goes to the next line without interpreting the line,
            The CTRL combinations are not being executed and only written
            to the screen, but, may be be sent off with ENTER.
PGDN        crolls text up by one page.
PGUP        scrolls text down by one page.
CTRL-PGUP   enlarges the monitor window, text comes along.
CTRL-PGDN   reduces the monitor window, text comes along.
CTRL-END    enlarges the transmit window, text comes along.
CTRL-HOME   reduces the transmit window, text comes along.
ALT-X       terminates the SCC.EXE program.
ALT-1       moves cursor to top window (TX window).
ALT-2       moves cursor to center window (RX window).
ALT-3       moves cursor to bottom window (Monitor window).
INS         toggles between turning insert mode off and on.
CLear       erases the receive window.
CLear 1     erases the transmit window.
CLear 3     erases the monitor window.
CLear 123   erases all windows.

5. COMMANDS

5.1. TNC Commands

:BAdress (target call)(mycall)(digi1)(digi2)
  states sender, target and digipeaters of a beacon.

:BADRESS DL1VBN DL1UF-7 DB0DSD
  The beacon transmits with the call DL1UF-7 to DLlVBN via the digipeater
  DBODSD

:Btext
  enters contents of beacon.

:BTEXT "TEXT"

:CNot (call)(call)(call)
  sets a table of calls whose packets are not being accepted. Packets from
  and to stations listed are treated as if they had not been received. No
  transmission of DM.

:CNOT PKB8 PK232 NOCALL

:Connect (call)(digi1)(digi2)..(digi8)
  initiates connection to call, optionally via digipeaters. There is a
  maximum of eight digipeaters allowed. When connectmg direct, enter onlv
  call of QSO-partner.

:C K5VT When entering :C by itself, the call of the last connect appears.
  The individual calls may be separated by spaces or by commas.

:C N7US AZRIM DX2

:Disconnect
  initiates disconnection from connected station, or terminates the
  connecting process. Has this command been entered twice, disconnection
  takes place right away and no response (UA or DMI from the partner is
  being expected in order to activate the disconnect mode. This is helpful
  in cases when connections break off because of failures at the partner
  station or at the closest digipeater. It prevents having to wait until
  retries run out.

:DCall
  indicates the callsign that the system digipeats under. It is not required
  that DCALL is identical to MYCALL.

:LlNKTime (decimal)
  After each run-down of the timer, the link is checked using an RR-frame
  whenever no data have been exchanged in the interval. As soon as RR is not
  confirmed by the other station, the system polls and after RETRY the
  connection is severed. This can occur during path loss or because a
  digipeater or partner switched off without disconnecting first. Default
  value is 30 (x1Os).

:MAxframe (decimal)
  The TNC can send several packets without receiving a confirmation.
  MAXiFRAME is the maximum number of unconfirmed frames. Values 1..7 are
  valid.

:MYcall (call1)(call2)..
  designates the callsign of the system. To differentiate, a digit from 1 to
  15 may be attached together with a hyphen to the callsign. The first
  callsign in line is being used for the initial connect .

:Paclen (decimal)
  determines the maximum frame length. Frames that are digipeated are not
  altered in length by the individual digipeater. Values between 1 and 256
  are valid. A PACLEN of O may lead to a crash of the system. The value
  should be adjusted to the quality of the link.

:Quit
  functions just as DISCONNECT, however, severs the connection only after
  all data have been sent or the quit timer (see :TQuit) has run down. This
  command is recommended for cutting off reliably a connection by remote
  control.

:RETry (decimal)
  selects maximum number of times unacknowledged frames are retransmitted.
  Only RETRY/4 attempts take place when connecting and disconnecting.
  Because of the unknown number of auto-router digits during connect efforts
  via digipeaters, RETRY-2 is being used.

:Xconnect (temporary call)(target call)(dig1)(digi2)
  allows to connect with a callsign that deviates from the first MYCALL
  without changing MYCALL. This is useful in particular when a different
  SSID is desired temporarily. The callsign returns to MYCALL after the
  connection has completed.

5.2. Timer Commands, Layer 1 and Layer 2

When checking the parameters the value is disclosed but not changed.

:BEacon (decimal, in 1s steps)
  directs the transmission of a beacon text which is stored with BTEXT. The
  beacon function is disabled with n =0. A value of n =900 indicates a
  transmission every 15 minutes.

:DWait(decimal. x 10ms)
  selects transmission detay to avoid collisions. DWAIT periods are random
  time intervals between zero and the chosen value. DWAIT 0 should not be
  used since minimal periods are reserved for digipeaters.

:TXdelay (decimal)
  This is the time between keying the transmitter and sending data. With
  TXDELAY one may compensate for a slow squelch on the other end of a link.
  A high value, however, overloads the channel unnecessarily. Recommended
  value: 15 to 40(x10 ms).

:FRack (decimal, 100ms steps)
  After sending a batch of data, the TNC waits for a confirmation from the
  other end before the same batch is transmitted again.
  This waiting period is being adjusted with FRACK. The TNC calculates the
  actual waiting period by multiplying by two the number of dlglpeaters with
  FRACK plus one.

:IPoll (decimal)
  IPOLL is the immediate repeated transmission of a short frame in case the
  first frame was not confirmed by the other end. The value indicates up to
  which information-field length of a frame an info poll should take place.
  A sensible value is 80 since the statistical perimeter between the entire
  overhead and useful date lies in that neighborhood.

:TAil(decimal)
  Time, in 1Oms steps, that passes before the transmitter switches off after
  sending a frame. Important for full-duplex contacts and slow modems. In
  case of neglect, the transmitter will be off before the last flag has left
  the system. Such packets cannot be decoded by the other side.


:RESptime (decimal)
  selects delay for the acknowledgment of packet transmissions. This value
  has to be greater than zero and should be smaller than the partner_ s
  FRACK (to avoid re-polling by the other end). During extensive bi-
  directional data flow, confirmation packets (RR) can be reduced to a
  minimum by setting :RESPTIME signiflcantly greater than :DWAIT.

:TQuit(decimal)
  Quit timer which aborts connection after entering :Ci, even if data are
  still on hand. Purpose of this time is to sever a connection in case of a
  disrupted data flow because of a poor link. Default value is 12.

5.3. Additional Commands

:Help
  displays a help page on the screen.


:Oshell (DOS command)
  executes a DOS command (loads COMMAND.COM). Hit any key to continue.
  The command :OSHELL allows to move temporarily to DOS while the packet
  system and all connections continue to run in the background. When
  entering EXIT, (ENTER) and any other key, one gets back to the packet
  screen. In addition, it is possible to enter the entire DOS command, such
  as :0 DIR A:/P. In this instance it is not necessary to type ENTER after
  completing the task.

:Users or
:CStatus
  displays a list of stations currently connected.

:VErsion
  discloses the version of CB-COM as well as the most important
  configuration information.

5.4. Commands to Store and Send Files to Hard/Floppy Disk

:Edit (filename)
  The EDIT command opens a file on the hard drive or on a floppy disk. Text
  is being written to disk the same way one sends text. In other words,
  there cannot be a colon in the first column.

:EDIT OFF closes the file again.


This command is not intended to be an editor as such, but a means to make
quick notes wlthout leaving the program or to record lines from the screen
into a file by sending them off individually with (ENTER).

:Read (filename)
  permits sending of a specified file to the partner on the other end
  (counterpart to the :WRITE command).
  :R C:\CB-COM\SCC.lNI

:RPrg (filename)
  Same function as above, but for binary files.

:View (filename)
  The command VIEW displays a text file onto the receive window. Short files
  may be scrolled back, but longer ones need to be interrupted with SHIFT-
  TAB or the "+ " on the numerical pad .
  :V C:\CB-COM\SCC.INI

:Write (filename)
  This command opens a text file snd stores all incoming text from the other
  station onto a disk. All DOS-type file names and extensions are allowed
  including a path.

:Write OFF closes the file.
:W C:\PR\SCC\INFO\CB-COM.TST
  The following command creates a file with the name "testfile" inside the
  CB-COM directory: :W TESTFILE

:WPrg (filename)
  A binary file may be opened with WPRG. All incoming date are stored
  without alteration. Other than that, same details apply as for WRITE.

:WPrg OFF closes the file.

6.DISPLAY OF INFORMATION

Video Display

Before starting the program, the screen adapter has to be set in SCC.INI.

The default value for VADAPTER is pre-set with VA 0. Using this
adjustment, all common video cards are identified and the display should
be acceptable.

If a 43-line display EGA/VGA is not desired, set VA to two.

If a CGA card IS used in color mode, set VA also to two.

Unsatisfactory results using LCD displays may be improved with VA 3.

Is a monochrome card not recognized appropriately, one should test VA 1
and VA 3, if this does not enhance the video sufficiently, experiment wlth
the screen attributes (adjust SA (*window)(*color)).

With the command :CLEAR the entire screen or parts of it may be erased.
This applies to the selected port.
CLear           erases the receive window.
CLear 1         erases the transmit window.
CLear 3         erases the monitor window.
CLear 123       erases all windows.

:CText (text>
  Connect text, up to 80 characters wide, will be transmitted as soon as
  another station connects, (Welcome text).

:German (ON/OFF>
  GERMAN ON allows to transmit and display German special symbols and IBM
  umlauts. The keyboard outline stays unaffected.

:MCalls (call>(call2>..
  selects the stations that are intended to be monitored.
  See :MSELECT.

:MHeard
  displays all call signs that have been heard on port 0, without stating
  time or path. In addition, the following commands are available:
  :MH *          all callsigns during the last 30 min, without path.
  :MH #           all callsigns during the last 30 min, with path.
  :MH (min>       all callsigns during the time period requested, e.g.
                  :MH 20 discloses all callsigns during the last 20 min.
  :MH (call>time, path and SSlDs of (call>.

  It is possible to enter fractions of calls, such as :MH (WA7 > which will
  result in an output that shows all those stations heard that have WA7
  as part of the callsign, e.g. WA7KLK, WA7KPH, WA7LNW, etc.

:MOnitor (port number >
  designates the ports to be displayed on the monitor.
  :MO 01234567 displays all the ports.
  :MO 0 displays only the first port.


:MSelect (number>
  allows to select certain packets from and to individual stations to be
  filtered out or to be exclusively presented. The following commands may be
  set:
  :MS 0 monitor selection off. :MONITOR has to be set to the port in
  question, however.
  :MS 1 records a QSO. The information flow between the two stations set
  with :MCALLS is being displayed. This may be done for several pairs
  simultaneously.
  :MS 3 MTO (Monitoring packets sent TO) mode. Only packets to :MCALLS
  stations are displayed .

  Whenever the value ten is added to the above numbers, e.g.
  :MS 10, :MS 11 and :MS 13, the function will be inverted. In other words,
  the selected stations are not displayed. All other monitoring stays
  standard.

SAttrib < area > < color combination >
  allows to adjusts the screen attributes while in the program.

  <area> may take on the following values:
  0 transmit window, individual entered signs.
  1 upper status line (between RX and TX window).
  2 STOP display at the upper status line.
  3 receive window.
  4 lower status line: Display of connect call sign and port.
  5 lower status line: Not selected and not connected port.
  6 lower status line: Port selected.
  7 monitor: Address field of frames.
  8 monitor: Info field of frames.
  9 control signs, e.g. Ctrl-Z (cannot have color combination 0, 3, 7 or 8,
    otherwise they will not be visible).

  The <color combination > is being entered in hexadecimal.
  The first number is the background, the second the foreground.

Number of the color attributes:

0 = black     8 = dark gray
1 = blue      9 = light blue
2 = green     A = light green
3 = cyan      B = light cyan
4 = red       C = light red
5 = magenta   D = light magenta
6 = brown     E = yellow
7 = white     F = bright white

Color attributes 8 trough F work only with foreground colors.
Using them for background, colors 0 through 7 appear and blink

For example:

:S 8 04
  Info field of frames appears with red print on black background.

:S 2 C7
  STOP dlsplay (suspending output with SHIFT-TAB) appears white on blinking
  red background.

  Please note: Changes on the status lines take effect immediately while
  changes in areas O. 3, 7 and 8 alter the appearance only after new
  incoming data are received.

:SAVport < decimal >
  indicates the number of screens that will be stored to floppy disk/hard
  disk when leaving the program. When using slow computers or floppy disks
  it is being recommended to utilize only one port or to turn off its
  function altogether with :SP 0. Only the text that is visible on the
  screen will be stored and not any part that scrolled off.

7.    REMOTE OPERATION

The CB-COM system may be remote controlled by another station. This
reauires to set
:REMote ON. The other station may then remote control all commands, except
  for :Oshell (DOS). Because of the risks of misuse, the utilization should
  be well considered.

7.1. Unproto Transmission

  An Unproto (Ul) transmission has to be typed onto the transmit window of
  the F10-screen.

  It is possible, of course, to enter an Unproto address or a digipeater
  chain. This is being done by entering, e.g.
  :C DBOABC DKOXYZ inside the F10 screen. In this case DKOXYZ represents the
  target address and DBOABC the digipeater.

  The Unproto address for beacon transmission has to be set with :BADRESS.

8. RETROSPECT AND PROGRESSION

The spectacular development of the Personal Computer has opened an
entirely new avocation to the HAM population. A rapidly increasing number
of amateurs is fascinated by Packet Radio and its applications, such as
Personal-Bulletin-Board Systems (BBS) and the DX PacketCluster.

As soon as the first computers showed up in the seventies, amateurs
developed right away practical applications for the HAM shack. At first
only radio teletype, code practice and propagation programs, etc. were
used until in 1978, the Canadian Department of Communication (DOC) allowed
amateurs packet-radio experiments. Within a very short period of time, the
Vancouver Amateur Dlgital Communications Group (VADCG) manufactured and
sold more than 500 Terminal Node Controllers (TNC) worldwide. In late
1981, the Tucson Amateur Packet Radio (TAPR) group was founded in
Arizona/U.S.A. and became a leading promoter of this new mode. The group
created two consecutive TNC models that were distributed to a large number
of interested HAMs who provided rich feedback which in turn contributed to
the completion of the well known TAPR TNC kits. The considerable operation
limits of the VADCG software became center of extensive discussions.
Because of the pressure to be ready for the launch of OSCAR 10 (Orbital
Satellite Carrying Amateur Radio), the interested groups agreed on an
uniform protocol, the AX.25. Most of the problems with the Public Packet-
Switched Network Protocol had been solved by Eric Scace, K3NA, on of the
authors of the commercial standard X.25.

In long session, together with Hank Magnuski, KA6M and Harold Price, NK6K,
the foundation for AX,25 had been laid.

The lucky marriage between computer and radio makes it possible for the
HAM to remain on the cutting edge of technology in the future.

8.1.   Comments to the AX.25 Protocol

The main part of the AX.25 protocol is the Open Systems Interconnection
Reference Model (OSI-RM) of the International Organization of
standardization (ISO). It consists of the seven following levels:

Level 1, the physical layer, involves modems, radios and the entire
communications medium.

Level 2, the link layer, arranges for error-free data transmission and
reception.

Level 3, the network layer, concerns addressing, guidance, flow control,
etc. to get packets to their destination inside the network.

Level 4, the transport layer, arranges the data into packets with
transport-layer data added to effect the complete reception and proper
sequencing of data.

Level 5, the session layer, organizes the connection, transfer of data and
disconnection. Level 6, the presentation layer, is involved in the
terminal management. Level 7, the application layer, functions as link
between the OSI communications environment and the application process.

Structure of a Packet

The packet begins and ends with flags. To prevent coding of flags within a
packet, a zero bit is inserted after every four one bits and eliminated
again after reception (bit-stuffing).

The Address Field contains the call slgns of the source and the
destination as well as up to eight digipeater call signs. The length of
the field ranges between 1 2 bits (14 octets) to 560 bits (70 octets). The
first seven octets make up the call sign and the the SSID (Secondary
Station Identifier). The address field is complete if the zero bit of the
last SSID contains a one. To accomplish this, all ASCII characters of the
call sign are moved by one bit to the left which sets the zero bit to
zero.

The Control Field signals the frame type (eight bits).

The Protocol Identifier Field, which is used in I or Ul frames, indicates
type of network layer protocol if applicable (eight bits).

The Information Field incorporates the real user data (up to 2,048 bits).

The Frame Check Sequence Fieid is takes on frame error checking (16 bits).

The individual packets take on the following tasks:

DISC Disconnect)
The disconnect frame terminates the connection between two stations.

DM (Disconnected Mode)
The Diconnected Mode frame is a negative response to an SABM. The station
is "busy" and unable to accept a connection at this time.

FRMR (Frame Reject)
The FRMR frame is being transmitted only under very unusual circumstances
and indicates that the originating station is unable to process a frame
and that the problem will not be corrected by re-transmitting.


REJ (Reject) The Reject supervisory frame is being transmitted by the
destination station to request a repeat because of out-of- sequence
reception.

RNR (Receiver Not Ready)

The Receiver Not Ready frame is a flow-control mechanism and indicates
that the receiving station is not able to accept any more information
frames.

RR (Receiver Ready)

The Receiver Ready supervisory frame clears the RNR condition, indicating
that the system is ready to accept more data.

SABM (Set Asynchronous Balanced Mode)
This connect request supervisory packet initiates the connection between
two stations.

UA (Unnumbered Acknowledge)
The Unnumbered Acknowledge frame is a positive response to an SABM or
DISC. It is a confirmation that connection or disconnection took place.

Ul (Unnumbered Information)
The Unnumbered Information frame allows the transmission of data in an
unconnected mode which is used for tests, calling CQ, sending beacon
texts, etc.

9 TROUBLESHOOTING

After exlecuting L2, no blinking rectangle visible in the upper, right
corner of the screen, or the computer gets hung up.

Check whether the correct port has been set in SCC.INI. Only COM1 and
COM2 are valid. Is the correct jumper set for the interrupt? (See computer
manual for settings on the board).

Collisions are possible in case other resident programs (aside from the
usual DOS drivers) are running. Test whether temporary removal of those
programs take care of the situation. (Note: OFF.COM only works to remove
L2).

L2 works, but no packet screen shows up after loading SCC

Wrong video parameters may have been set.

Packets are not being decoded

Check whether L2 is runninq.

Check whether the :MONITOR command contains the desired port.

Study your RX audio in case data seem to arrive properly.

No Modulation
If L2 works (blinking rectangle), check the conneetor to the microphone.

Strange screen colors

Set new color combination with :SATTRIB or change VA in SCC.INI. In case
of doubt, restart PARA which loads the default combination.


Even though parameters have been changed, the program does not behave any
different

Some ot the parameters are queried oniy during initialization. In other
words, after making changes to the parameters, terminate L2 and restart
again. Note: Important changes should always be made in SCC.INI.

Error message when running the parameter compiler PARA,EXE or when
restarting L2 after changes have been made in SCC.INI

Rules may have been violated when making changes. Compare the applicable
line in the file SCC.INI of the master disk. -A semicolon ";" in front of
a comment may have been erased, or the wrong parameter may have been set.

The bell suddenly sounds bizarre

To produce the correct sound, CB-COM checks the speed of the computer
during the start of the program. If the clock speed is being changed while
running the computer, the frequency of the bell changes also. Reverse the
clock speed of the computer or restart L2 and SCC to return to the
original sound.

10  APPENDIX

10.1 Connection between CB-COM and computer

IBM compatible PCs came with either DB-9 or DB-25 sockets depending on
whether it is an AT (DB-9) or XT (DB-25). CB-COM may be directly connected
to the serial port (RS232) of an AT to connect CB-COM to an XT, use an
adapter or make up an adapter cable yourself. See the wiring of the
individual connection below (WARNING: note the unusual wiring):

signal  25 pin  9 pin

DTR     20      4       Transmit data
RTS     4       7       PTT
CTS     5       8       Receive data
GND     7       5       Ground


10.2 Summary Of Commands

:BAdress        Sets source, target and digipeaters ot a beacon
:BEscon         Activates the beacon
:Btext          Enters contents of beacon
:CL             Erase window
:CNot           Sets a table of excluded station
:Connect        Initiates connection
:CSUtus         Displays status of port
:CText          Enters welcome message
:Disconnect     initiates disconnection from connected station
:DCalls         Sets own digi calls
:DWait          Selects transmission delay
:Edit           Enters file from keyboard
:FRack          Selects frame acknowledgment timeout
:German         Allows special symbols and umlauts
:Help           Dlsplays help page
:IPoll          Repeats transmission of frame if not confirmed
:LlNKTime       Checks link
:MAxframe       Maximum number of unconfirmed frames
:MHieard        Displays list of stations received directly
:MOnitor        Selects monitor port
:MYcall         Enters callsign of own station
:Oshell         Exit to DOS
:Paclen         Determines the maximum frame length
:Quit           Dermination of connection, disconnect
:REMote         Enables/disables remote access
:RPrg           Transmits binary file
:RESptime       Selects min. delay for acknowledgment transmiss.
:RETry          Selects max. retransmiss. of unacknowledged frames
:Sattrib        Selects color parameters
:SAVports       Sets number of screens saved
:TAil           Sets time before TX turns off after sending frame
:TQuit          Sets quit timer (time after :Q)
:TXdelay        Selects delay between keying TX and sending data
:Users          Displays list of connected stations
:VErsion        Displays CB-COM version
:Write          Activates text file reception
:Xconnect       Changes SSID


10.3. Summary of Characteristic Keys

F1..F8          Switches between individual ports
F9              Moving from one window to another
F10             Monitor and unproto screen
ESC or TAB      Switches between command and text mode
PGDN            Scrolls text up by one page
PGUP            Scrolls text down by one page
CTRL-PGUP       Enlarges the monitor window
CTRL-PGDN       Reduces the monitor window
CTRL-END        Enlarges the transmit window
CTRL-HOME       Reduces the transmit window
ALT-X           Terminates the SCC.EXE program
ALT-1           Moves cursor to top window (TX window)
ALT-2           Moves cursor to center window (RX window)
ALT-3           Moves cursor to bottom window (Monitor window)
INS             Toggles between turning insert mode off and on

10.4. Additions to the CB-COM navigation

As a result of technical advices in our radio equipment modem CB-COM and
the terminal software, there are some innovations that are not yet to be
found in the manual.

1) Software

The software ls now available ln the 2.0 version.

The new features are:

Easier lnstallation

Installation on the hard disk is made easier for you by the batch file
setup.bat.

Insert the CB-COM dlskette ln the current dlsk drlve and initiate
install.bat by entering:

a:>setup

This generates an index CB-COM on your hard disk c :, the CB-COM software
is copied and automatically initiated.

CB-COM user interface

The CB-COM user interface makes handling of the CB-COM software
considerably easier for you. You can initiate the software simply by
enterlng:

C: <enter>
CD CB-COM <enter>
C <enter>

On the screen a menu is displayed offering you all the CB-COM
functions you require.

In addition, two service programs have been integrated, making it easier
for you to alter the software configuration. These programs are the editor
CBED and the INPUT window, the purpose of both being to service the
configuration file SCC.INI.
