FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) NAME NAME NAME NAME faintro - introduction to device-independent Fast Alphanumeric interface SYNOPSIS SYNOPSIS SYNOPSIS SYNOPSIS #include #include #include #include DESCRIPTION DESCRIPTION DESCRIPTION DESCRIPTION The fast alpha display library, libfa.a, provides a high- performance standard functional interface for random-access alphanumeric devices. It is capable of driving multiple displays of differing types at one time. The display model supported by these functions is a two dimensional, rectangular, random-access display device. Constant-width only characters may be placed (only) on any character boundary. Each character position may be enhanced with one or more of several video enhancements (ie.. reverse video, blink). Many of the functions reference fa_rectangles. The fa_rectangle fa_rectangle fa_rectangle fa_rectangle structure is defined in as: fa_rectangle fa_rectangle fa_rectangle struct fa_coordinate { int x, y ; }; /* * A fa_rectangle includes [origin] but does * not include [corner] */ struct fa_rectangle { struct fa_coordinate origin; struct fa_coordinate corner; }; As the comment indicates, the corner is not included in the corner corner corner fa_rectangle as is consistent with C language arrays. For example, the following rectangle: 012345 0...... 1..XX.. 2..XX.. 3..XX.. 4...... 5...... Hewlett-Packard - 1 - (printed 12/14/84) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) is denoted by: r.origin.x = 2 r.origin.y = 1 r.corner.x = 4 r.corner.y = 4 This method of display access is fairly low-level and many applications will want to build a friendlier interface upon this base. IMPLEMENTATION IMPLEMENTATION IMPLEMENTATION IMPLEMENTATION The initial implementation is limited to current technology and is as follows. A library, /usr/lib/libfa.a contains all the existing FastAlpha device-dependent drivers. This is used whenever the target display device is not known at link time or when simultaneous support of different types of display devices is desired. When the target display is known at link time, one of the specialized FastAlpha libraries may be used instead to reduce object code size. These libraries can support multiple devices of the same type concurrently. The device-dependent libraries reside in /usr/lib and currently include: libtfa.a FastAlpha library for escape-sequence driven terminals. libafa.a FastAlpha for FSD s200 alpha-plane devices such as the 9836 and Marbox. libwfa.a FastAlpha for use in the WINDEX environment. libt0fa.a FastAlpha for use in the Term0 (Alpha) window in HPWindows. No changes to source code are required to use libfa.a versus the device-dependent FastAlpha libraries. The common header file for using FastAlpha is /usr/include/fa.h. FILES FILES FILES FILES /usr/include/fa.h /usr/lib/libfa.a /usr/lib/libXfa.a Device "X" dependent driver SEE ALSO SEE ALSO SEE ALSO SEE ALSO Hewlett-Packard - 2 - (printed 12/14/84) Hewlett-Packard - 2 - (printed 12/14/84) Hewlett-Packard - 2 - (printed 12/14/84) Hewlett-Packard - 2 - (printed 12/14/84) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) FAINTRO(3D) HP Integral PC (Proposed) FAINTRO(3D) facursor(3D), fagetinfo(3D), fainit(3D), faintro(3D), farectwrite(3D), faroll(3D), fawrite(3D) Hewlett-Packard - 3 - (printed 12/14/84)