Skip to content

APL/PC2 with Auxiliary Processors

Vector 3:2, page 112

system interfaces implementations

Transcribed from the printed issue; not yet reviewed. Read it in the PDF of the issue, page 112

This tutorial was given by David Selby, on behalf of Manuel Alfonseca and himself. The paper in the volume of Tutorial Proceedings runs to some twelve very informative pages, so this report addresses itself to the presentation at the Conference.

David gave a very acclomplished showing of a series of graphics displays, some of them animated, using an IBM PC/AT and a Barco projector. The PC/AT had a co-processor, one megabyte of storage and a standard Colour Graphics Adapter. (In principle, the presentation would run on any PC with 640K storage.) All of the graphic images were produced using APL (naturally), using Auxiliary Processors 124 and 206. Some images were constructed ’on the fly’ and others were pre-computed.

The Auxiliary Processors were illustrated in turn.

AP 80 – Printer Control

A very simple protocol is used with one shared variable. The user has to be aware that the printer has a buffer, and will not print characters received until either the buffer is full, or a suitable control character (e.g. newline) is received. AP124 was used to produce an animated picture of a series of characters being passed from PC to printer. (The picture of terminal and printer was constructed from standard display characters.)

AP 2 – non-APL Program Interface

APL obtains storage in 64k partitions in which it can load and run programs from disk. Communication between these programs and APL is possible. DOS, FORTRAN and other programs can be executed in this way, and Auxiliary Processors can be loaded. Thus a user’s processing requirements can be met while retaining control through APL, and space constraints can be eased through loading APs dynamically in an overlay structure.

AP 101 – Stack and Session Control

This is broadly similar to the AP of the same number in mainframe implementations, permitting stacked communication with the host system (i.e. DOS).

AP 103 – BIOS/DOS Interrupt Processor

Again, this provides an interface with the host, this time a direct interface. The user can have a very low-level interface with DOS using AP 103 to generate software ’interrupts’ to manage space within the APL workspace and to drive I/O ports.

AP 124 – Full-screen Text Processor

Compatibility with the VSAPL AP124 is provided. As mentioned above, some of the ‘pictures’ produced during this tutorial session were in fact not graphics images, but were composed of characters displayed using AP 124. The more usual text display was illustrated in detail.

AP 190 – Host Communications Processor

This is probably the most exciting of the APs of APL/PC 2.0, because it provides the opportunity to perform workstation and host programming under the complete control of the APL/PC session. The illustration given showed very effectively and in parallel both the underlying APL code and the host session as seen by the user.

AP 210 – DOS File AP; AP 488 – IEEE/GPIB Processor

These were not covered in detail.

AP 206 – Graphics Processor

Starting with illustrations using APL/PC GRAPHPAK (familiar to mainframe users) – including of course the famous ’apple’ – numerous animated displays were shown, with the mechanics being revealed. Animation is achieved through the use of graphics buffers in storage, with sequencing and timing managed by APL functions.

A beating heart was shown very effectively. This is one result from work going on at the IBM Scientific Centre in Winchester, normally with higher-resolution displays. As a grand finale, graphics and music were combined to play out a very successful presentation.

Questions

Q. Is the Enhanced Graphics Adapter supported?
A. No, but we would like to do it.
Q. Who controls your screen when using AP 190?
A. You do, in APL.
Q. Using AP 2, how do you manage file-types?
A. The loader sorts out whether it has a COM or EXE file.