Jump to content

Basic telecommunications access method

From Alfawiki
Basic Telecommunications Access Method (BTAM)
Company typeProgramming interface
IndustryTelecommunications, Computer programming
Founded1960s
FounderIBM
FateSuperseded by VTAM
Headquarters
Armonk
,
United States
ProductsTelecommunications access method for IBM System/360
OwnerIBM

Basic Telecommunications Access Method (BTAM) represents a foundational programming interface created by IBM specifically for the IBM System/360. It supports telecommunications terminals operating with start-stop and binary synchronous protocols. Over time, BTAM was supplanted by more advanced interfaces such as QTAM and TCAM, and ultimately replaced by VTAM in managing Systems Network Architecture (SNA) devices. Nonetheless, IBM maintained support for BTAM up until the year 2000.

Unlike higher-level protocols, BTAM places the responsibility for handling nearly all protocol intricacies on applications or transaction processing systems. This results in a more complex implementation but enables compatibility with unconventional devices and configurations.

Access method designed for terminals

BTAM enables interactive sessions with remote terminals, which are generally linked through a front end processor, for example an 270x communications controller. It also accommodates local channel-attached 3270 terminals. The method dynamically generates Channel command words (CCWs) to perform reading, writing, and polling operations on terminals, managing responses depending on communication success or failure conditions.

Essential component in transaction processing environments

BTAM played a crucial role in IBM’s initial transaction processing systems such as MTCS, CICS, and IMS, driving the expansion of online transaction processing within industries like banking and insurance. It frequently operated alongside newer access methods like VTAM, supporting a variety of devices within the same transactional framework.

Programming details

Reference: IBM System/360 Operating System Basic Telecommunications Access Method; GC30-2004-6.

Developing applications with BTAM requires an in-depth understanding of terminal-specific behavior.

The DCB macro establishes a communications line group:
dcbname DCB DSORG=CX...
A line defined as DEVD=BS indicates a Bisync connection. Various operands are used to tailor terminal configurations.

The DFTRMLST macro specifies a list of terminals attached to the line, detailing device types, line formats (start-stop, bisync, point-to-point, multipoint), and polling strategies (wrap-around or open). Each remote device is identified by polling characters or telephone numbers. The CHGNTRY macro allows modification of device parameters during runtime. Wrap-around polling sequentially queries devices until one responds, thereby minimizing CPU usage.

Programmers define a buffer pool to store messages exchanged with terminals. BTAM can either automatically create this pool or developers can manually construct it using the BUILD macro for static or dynamic memory allocation or GETPOOL for automatic buffer assignment. For read operations, buffers are acquired automatically; for write operations, programmers must request buffers via REQBUF. Buffers are freed after use through RELBUF.

Translation tables (ASMTRTAB, TRNSLATE) facilitate conversion between non-EBCDIC character sets.

Standard OS/360 macros such as OPEN and CLOSE initiate and terminate BTAM line processing respectively; LOPEN reinitializes lines that fail to open properly.

BTAM provides multiple options for the READ and WRITE macros depending on terminal and line states—examples include "read initial with reset," "read conversational," "write initial," and "write continue transparent." These asynchronous commands require subsequent invocation of WAIT or TWAIT macros to complete operations and obtain status information.

The macro RESETPL cancels any pending reads and stops polling activity on a specified line.

Supported devices

BTAM is compatible with various IBM terminals and hardware, such as: