Terminal Emulator

Terminal Menu
XMODEM Protocol
Terminal Preferences
Baud Rate & Protocol
File Transfer Settings



Crossbow features an integral terminal emulator which provides instant access to target systems and development tools with serial communications capabilities. To locate or open the terminal window, choose Locate Terminal Window from the Windows menu. The display screen for the terminal window behaves just like the edit windows with certain enhancements and limitations inherent in serial communications.

As text comes in from the serial port, the lines start scrolling off the top until the terminal window reaches its limit of 30,000 characters, when it discards the oldest 3000 characters. The text buffer can also be cleared manually using the Clear Buffer command described below.

Unlike edit windows which display keys typed at the keyboard, the terminal window displays characters received at the selected serial port and sends keys typed at the keyboard to the serial port. Since most connected devices will echo characters received, the screen generally shows the keys pressed plus any additional information returned from the connected device.

Some standard Macintosh editing functions have slightly different meanings when used with the terminal window. Since the terminal window displays only a record of characters received, Cut and Clear have no meaning and are disabled in the Edit menu. In addition, keys typed at the keyboard and characters received at the serial port force the insertion point to the bottom of the terminal window. Paste to the terminal window sends the contents of the Clipboard to the serial port using the same options specified for ASCII file transfers which are described below. Copy from the terminal window places the selected text into the Clipboard for use with other documents or to paste back to the serial port.

Since the screen redraw time on a Macintosh is slower than the fastest serial data rates, Crossbow will, if necessary, draw entire blocks of text instead of single characters. At the highest data rates, some received characters cannot be seen without using the scroll bars to access the scroll-back buffer.


Terminal Menu

The Terminal menu provides access to the file transfer commands and various configuration and preference dialog boxes.

Terminal Menu

The Clear Buffer command immediately deletes all the text in the terminal window (including text scrolled off the top). The Clear Buffer command is placed at the bottom of the menu and well clear of the nearest item to allow quick access with limited chance of accidental invocation since Clear Buffer does not request confirmation and cannot be undone.

Send Text File prompts you to locate a text file to send to the selected modem or printer port using the current protocol and settings specified by File Transfer Settings described below. While sending, a dialog box displays progress and shows a Cancel button which can immediately cancel the send.

Send File XMODEM prompts you to locate a file of any type and sends the file to the selected serial port using XMODEM protocol which is described below. During transmission, Crossbow displays transfer progress, timeouts and errors, and a Cancel button to abort the transfer at the end of the current block, or at the next timeout.

Receive File XMODEM prompts for the name of a file for saving the incoming data, defaulting to the name "Receive File". While receiving, Crossbow displays the transfer status and a Cancel button to abort the transfer, in a dialog box.

Send Break from the Terminal menu sends a 250 millisecond break character from the selected serial port. If Send Break is invoked using the command key equivalent, Crossbow will continue to send the break signal as long as the command key is held down.


XMODEM Protocol

XMODEM protocol specifies data blocks prefaced with a constant start byte (01 Hex), an incrementing block number byte (01 02 ), the one's complement of the block number (FF FE ), 128 bytes of data, then a checksum byte which is the unsigned sum of the data bytes with overflow ignored. The receiver initiates transfer by sending an ASCII NAK character (15 Hex). The receiver requests subsequent blocks by sending an ASCII ACK (06 Hex) or sending NAK to request a repeat of the last block. The transmitter sends an ASCII EOT (04 Hex) in response to the receiver's ACK to indicate end of transmission.


Terminal Preferences

The Terminal Preferences menu selection opens the dialog box shown at right containing options affecting the terminal window display and startup characteristics. Clicking the Cancel button dismisses the dialog without making any changes or taking any actions. Clicking OK or Save Settings closes the dialog and immediately applies the new selections. Clicking Save Settings additionally makes the new settings the default for future Crossbow sessions.

Preferences Menu

Checking Display non-ASCII as Hex causes the terminal window to show normally invisible characters received from the selected serial port as pairs of hexadecimal digits. The carriage-return character (0D Hex) and tab character (09 Hex) will not be displayed as hex characters.

Checking Filter Control Characters Discards incoming serial data that is not part of normally displayed or printed characters.

Checking Smart Caps Lock simplifies communications with target systems which expect characters in upper case only. Rather than toggling the caps lock key each time you change from an edit window to the terminal window, Crossbow will examine the state of the caps lock key and the first alphabetic key typed at the keyboard. If the key is upper case, nothing happens. If it is lower case, Crossbow inverts the case of it and all future alphabetic keys. Press the caps lock key twice to temporarily defeat Smart Caps Lock.

Checking Update in Background allows the terminal window to display incoming serial characters even if another edit window or application is currently in front. Background updating can cause some applications and edit operations to slow significantly when the serial port receives lots of incoming characters at high baud rates.

Checking Wrap Lines at Right Edge causes Crossbow to insert a carriage-return when a line reaches the right edge of the terminal window. The inserted carriage-return becomes a permanent part of the buffered text and does not resize the line if the window's width changes.

Checking Open Terminal at Startup and clicking Save Selection causes the terminal window to open automatically each time Crossbow starts up.

Use Tab Spacing to specify the number of columns between tab stops. Tab spacings must be a number between one and sixty four.

The Input Buffer text box lets you specify the size of Crossbow's interrupt buffer. The larger the buffer, the less chance of missing any incoming characters, but the less memory available for assembly and other functions. The default 8000 byte buffer is more than adequate for most development environments.


Baud Rate & Protocol

The Baud Rate & Protocol menu selection opens the dialog box shown below containing options which select the modem or printer port, baud rate, data bits, stop bits, parity, and handshaking. Clicking the Cancel button dismisses the dialog box without making any changes or taking any actions. Clicking OK or Save Settings closes the dialog box and immediately applies the new selections. Clicking Save Settings additionally makes the new settings the default for future Crossbow invocations.

Protocol Menu

The modem and printer Port: icons select the corresponding serial port on the back of the Macintosh. Crossbow will display an error alert if another application, driver, or desk accessory is already using the requested port. If necessary, use the Chooser desk accessory to disable AppleTalk and free the printer port.

The Handshake: radio buttons select either no handshaking or XON/XOFF for both received and transmitted data. For transmitted data with handshaking, a received XOFF (Control-S or 13 Hex) causes Crossbow to stop transmitting until an XON (Control-Q or 11 Hex) is received. For received data, Crossbow sends an XOFF to the transmitting system when the input buffer gets too full, and sends an XON when the buffer begins to empty.

The remaining options should be selected to match the requirements of the target system or emulation device.


File Transfer Settings

The File Transfer Settings menu selection opens the dialog box shown below containing options which control ASCII file transfers and pastes to the terminal window. Clicking the Cancel button dismisses the dialog without making any changes or taking any actions. Clicking OK or Save Settings closes the dialog and immediately applies the new selections. Clicking Save Settings additionally makes the new settings the default for future Crossbow sessions.

Settings Menu

The Send Prefix text box contains text to send just prior to sending the data from a Send and is generally used to inform the target system that something is about to happen. The dialog box above contains the proper settings to load hex files to the supplied monitor program.

The Send Suffix text box contains text to send just after sending the data from a Send.

Char Delay specifies the time in milliseconds to delay after sending each character for systems which cannot keep up with sustained incoming data.

Line Delay specifies the time in milliseconds to delay after sending each carriage-return for systems which need processing time after receiving a line.

Discard Echoed Text causes Crossbow to throw away any echoed replies from the target system that are received during a transfer.


Previous         Next        Contents