CTD -- New Flexibility Arrives Soon
by Stuart Baker
This article describes some of the features offered by the new CTD driver. CTD is an acronym for the Common Terminal Driver. The CTD driver addresses the needs of both MTM and RELIANCE users. CTD eliminates the BIOC generated rift between users of MTM and users of RELIANCE. MTM users got spoiled by the functionality of BIOC and were no longer satisfied using the ITAM driver. The drawback, BIOC does not work with RELIANCE. The new CTD driver works with both environments, providing BIOC's interactive functionality for MTM users and the block mode support needed for RELIANCE. Having one driver that works with both environments simplifies sysgening and reduces operating system size.
In my last article I said you could "look forward to a hands on report in the next Interchange news letter." Instead, I have decided to address the increased functionality of CTD. I have made this topic change because beta test problems have limited my ability to do extensive evaluation of the driver. Combining the functions of BIOC and ITAM is not simple. I have it on good authority that the complete listing of CTD exceeds 32,000 lines! A project of this magnitude is bound to have a few initial problems. I will defer the hands on discussion until the problems are resolved. After all, resolving problems is what beta testing is all about.
When running CTD with MTM, it looks and feels a lot like the BIOC driver. I am digressing however, on with the new features. The CTD driver supports the SVC 1 interface of both the BIOC and ITAM drivers. It does not include the ITAM SVC 15 or multi-drop support. It does provide an autobaud feature that functions with both environments. This driver supports a multitude of extended functions, too many to address here. This article addresses the new features that simplify implementation of programs like PASSPORT and XMODEM32. Telecommunications software development would have been a lot easier had CTD existed five years ago.
CTD is the second OS/32 driver to offer typeahead. Typeahead allows programs to process input from other processors or devices without loosing any data. You effectively have instant turnaround after issuing a write. CTD also supports input flow control. The SETCTD program allows easy configuration of flow control. As the typeahead buffer fills, CTD sends the specified XOFF character to stop incoming data. When your application empties the typeahead buffer, CTD sends the specified XON character. Since a driver is handling flow control, system loading is no longer a consideration. This greatly simplifies data handling by telecommunications programs. No more lost data because of system loading or low priority tasks.
The structure of OS/32 makes it difficult to perform true full duplex communications. Current full duplex drivers require two device names, one for the read side and one for the write. Drivers of this type are not compatible with standard software such as MTM. Therefore, applications are usually written to use the standard drivers. Simulating full duplex with BIOC requires careful programming, and extensive use of the typeahead features. Along comes CTD's stream mode operation. This new feature simplifies full duplex operations and reduces system overhead. Since you start the process by issuing only one SVC, OS/32 has no problem keeping up. This SVC sets up an input and output queue for data transfer between the program and the serial port. When a program has data ready for output, it simply places the data in the output queue, and out it goes. As data arrives, the driver places it in the input queue. If the queue was empty, CTD notifies your application with a task trap. This sure beats the Read, Halt, Write, Read sequence needed with BIOC, and all with only one SVC.
The next feature I wish to discuss is CTD's packet mode. This mode is specifically designed for implementing file transfer protocols. CTD reduces overhead by using the Auto Driver Channel or the DIOS for all packet mode requests. In packet read mode, the translate feature of the Auto Driver Channel allows reads to end on any number of user specified characters. The ability to specify multiple read ending characters allows users to tailor the driver to meet the needs of almost any file transfer protocol. Another big plus for CTD's flexibility.
Another handy CTD feature is the Read/Write Without Carrier mode. This feature allows application programs to perform modem configuration and autodialing without the need to develop special dialing drivers.
CTD has a Upload/Download function.1 The supplied SETCTD program uses Upload/Download to display and modify many features of the CTD driver. Likewise, application programs may also tailor the driver on-the-fly. This is almost like performing an instant sysgen.
Well that about does it for this issue. Stay tuned for more on CTD in the next news letter. I should have some hands on experience to report for my next article.
1 This is similar to a undocumented BIOC feature used by the SETTERM program. SETTERM is available through the Interchange Library for users interested in learning more about this BIOC feature.
This SBSW.COM page has been optimized for printing.