FPaint Release Notes Version 4.08 13-APR-88 This document describes the major changes to FPaint since its first release (version 3.12). FPaint Editor Changes (MakScr.exe) Typing control Y spawns a subprocess to the operating system. To resume editing, LOGOUT is typed on the VAX; EXIT is typed on the PC. Array fields are now supported. An array is specified simply by including a subscript on the field name (e.g. FieldOneName(1) ). The "put" operation now allows the user to edit the field name without entering the field definition screen. In addition, if the "picked" name was subscripted, the subscript is incremented by 1. This facilitates the creation of array field groups. The VAX hosted editor now uses the SMG runtime library. This provides device independence and improves performance. FPaint will now run on all terminals supported by VAX SMG. Functionality has not (to our knowledge) changed. Interface Considerations An obvious irritation of FPaint Version 3.12 was lack of support for arrays. Hence calls of the form call TestDataDsp( 1, 1, First, Last, V(1), V(2), V(3), V(4) ). Version 4 allows the definition of array fields in the FPaint editor by including a subscript in the field name. In the case of the above example, if the fields were specified as array fields in the editor, the call would become call TestDataDsp( 1, 1, First, Last, V ). When array fields are specified, it will be necessary to refer to the auxillary file to determine the order of parameters. Impact of FPaint Version 4.08 on existing applications TTYinit now clears the screen. In addition, the PC version places the display in 80 column text mode. Because of conflicts with the C runtime/object library, GetChar has been changed to FPGetChar. ATTENTION C USERS! Old version FPaint applications that call GetChar, if rebuilt with the new version FPaint library and the VAX C runtime library (perhaps by default) will link and run(?), but not without strange happenings. New Library Routines subroutine EnablScreenHelpLine Enables the display of the FPaint screen help line during an edit operation (Default). subroutine DisablScreenHelpLine Disables the display of the FPaint screen help line during an edit operation. subroutine EnablHelpText Enables the display of the FPaint field help text during an edit operation (Default). subroutine DisablHelpText Disables the display of the FPaint field help text during an edit operation. subroutine ReadChangeFlag( logical*1 Flag ) ReadChangeFlag may be called immediately after an edit operation. If the user has changed the value of any field, Flag will be true. Optional SMG library Applications may be linked with SMG_FPaint.olb instead of FPaint.olb to gain the advantages of the VAX SMG runtime library. The following routines provide control of SMG buffering and non-SMG I/O. subroutine FPStartBuffer Turns on buffering of screen output. subroutine FPStopBuffer Turns off screen output buffering and updates the screen. subroutine FPFlushBuffer Updates screen during buffering. logical*1 function FPBuffer( integer*2 Dummy ) Returns .true. if buffering is on. subroutine FPRawMode Call this routine prior to sending device specific formatted escape sequences to the terminal with routines in SMG_FPaint.olb (e.g. OutString, TTYO ). subroutine FPCookedMode Call this routine after FPRawMode to return SMG to the default mode of trapping formatted escape sequences. NOTES: Before doing non-SMG I/O (e.g. FORTRAN reads or prints), buffering should be turned off. Since the SMG routines trap escape sequences, the escape character cannot be read by FPGetChar.