When a foreground (interactive) TSO user invokes ISPF, it provides a menuing system, normally with an initial display of a Primary Option Menu11 this provides them access to many useful tools for application development and for administering the z/OS operating system.
Such tools include
Underlying ISPF/PDF is an extensive set of tools that allow application developers to create panel-driven applications, and a set of guidelines to promote consistent use of ISPF functions. A "panel" is a character-based "window" which can encompass all or part of a 3270 session's screen real estate. See Text-based user interfaces.
Most mainframe software vendors used ISPF functions to create their applications, so their tools are similar in appearance and operation to ISPF. Similarly, many installations write their own informal tools that use ISPF services.
ISPF services are generally available to any programmer using the system, and can be used to write panels for either personal or system-wide use, writing in either compiled languages such as HLASM, C, COBOL, PL/I, or interpreted languages such as CLIST, REXX and ooRexx.
ISPF applications can use file tailoring to create customized members from skeletons; one use of file tailoring is to create JCL that the user can then submit as a batch job.
The editor screen is formatted with 2 lines (info & command line) at the top (or bottom – user choice), a six character line number column in the left margin, and the remainder of the screen width being filled with the records of the dataset being edited. Primary commands (which apply to the whole dataset) such as Find, Print, Sort, etc. are typed in the command line. Line commands (which apply only to specific line(s)) such as copy, move, repeat, insert, exclude, delete, text flow, text split are entered by over-typing the line number fields with a one or two character code representing the command to be applied at that line followed by an optional number which further modifies the supplied command.
The editor has several key features:
The editor can also be invoked in a 'view' mode. It behaves like the editor, but does not allow saving the data. Edited files can also be saved under a different name, creating or replacing another file.
ISPF provides the 'editor interface' which lets an application program display arbitrary data in the familiar editor panel. Thus many vendor packages use this familiar interface.
ISPF is designed to be customized for each user (a fairly new concept in 1974, when it was introduced). Some of the customization is global and some is specific to an ISPF application.
It supports a set of 24 function keys which, when pressed, execute commands.13 These are customizable: Each user can replace the default commands assigned to any key with his own preferred command (or series of commands). User settings are stored centrally, so that the user can logon from any terminal and that session will remember their previously-chosen commands for each key. Most personal computers copied this, and have a set of 12 or 24 function keys. Even some defaults have endured: the F1 key triggers a "help" function on a large number of mainframe & PC programs.
ISPF remembers each user's choices for such things as screen colors & layout, the location of the command line and scrolling preferences. It also remembers the last-used data set names on each panel, so the next time the panel is used the names are already filled in. This is very convenient for mainframe programmers because they frequently work with the same files repeatedly.
Many of the early users of PCs were mainframe programmers or users, who were accustomed to and liked the ISPF panel system. This led several companies to create partial clones of ISPF that run on DOS, OS/2, Windows or Unix PC systems. In 1984 IBM introduced the EZ-VU dialog manager for DOS PCs,1415 and later OS/2. In 1991 Tritus, Inc introduced Tritus SPF (TSPF), a program to allow use of mainframe ISPF applications and edit macros written in REXX on DOS, OS/2 and Windows; the last release was 1.2.8 in 1994. Freeware ISPF-style editors for Windows include SPF/SE and SPFlite.
In 1994 IBM introduced a built-in downloadable client program called the ISPF Workstation Agent (WSA)16 that can install and run on OS/2, Windows and selected UNIX workstations; the z/OS version of ISPF only includes WSA for Windows and selected UNIX workstations. WSA communicates directly with ISPF on z/OS and provides a point-and-click graphical user interface automatically.
The ISPF Workstation Agent can be used to edit PC based files from the ISPF editor to take advantage of the editor's strengths.
Michael Rotter (2009). Improving Productivity With ISPF Productivity Tool V6.1. IBM Redbooks. ISBN 978-0-7384-3329-5. introduces the Interactive System Productivity Facility (ISPF) Productivity Tool (IPT) 978-0-7384-3329-5 ↩
"SPF-PC1 DOS application started through the Windows ntvdm". July 16, 2020. Background information: ntvdm.exe NTVDM can run at startup. SPF-PC A 16-bit DOS application based on the mainframe editor ISPF editor. https://kc.mcafee.com/corporate/index?page=content&id=KB75366 ↩
"ISPF/PDF Program Development Functions" (PDF). Interactive System Productivity Facility General Information MVS, VM, and VSE (PDF) (Third ed.). IBM. July 1983. p. 4. GC34-2078-2. http://bitsavers.org/pdf/ibm/370/ISPF/GC34-2078-2_ISPF_General_Information_Jul83.pdf#page=13 ↩
Fosdick, Howard (1987). Using IBM's ISPF dialog manager. Van Nostrand Reinhold. ISBN 9780442226268. 9780442226268 ↩
Structured Programming Facility/Conversational Monitor System: Program Reference Manual (PDF) (First ed.). IBM. SH20-2409-0. Archived from the original (PDF) on 2019-12-02. Retrieved 2020-08-07. https://web.archive.org/web/20191202113023/http://bitsavers.org/pdf/ibm/370/ISPF/SH20-2409-0_Structured_Programming_Facility_CMS_Program_Reference_Sep79.pdf ↩
System Productivity Facility Dialog Management Services (PDF) (Second ed.). IBM. March 1981. SC34-2036-1. http://bitsavers.org/pdf/ibm/370/SPF/SC34-2036-1_System_Productivity_Facility_Dialog_Management_Services_Mar81.pdf ↩
System Productivity Facility for VM/SP Program Reference (PDF) (First ed.). IBM. March 1981. SC34-2047-0. Archived from the original (PDF) on 2019-12-02. Retrieved 2020-08-07. https://web.archive.org/web/20191202112638/http://bitsavers.org/pdf/ibm/370/ISPF/SC34-2047-0_VM_SP_System_Productivity_Facility_Program_Reference_Mar81.pdf ↩
"ISPF/PDF MVS/TSO, VM/CMS". Computerworld. April 12, 1982. p. 8. ISSN 0010-4841. https://books.google.com.ua/books?redir_esc=y&hl=uk&id=Now8YwGB-bgC&q=VM%2FCMS#v=onepage&q&f=false ↩
Interactive System Productivity Facility General Information MVS, VM, and VSE (PDF) (Third ed.). IBM. July 1983. GC34-2078-2. http://bitsavers.org/pdf/ibm/370/ISPF/GC34-2078-2_ISPF_General_Information_Jul83.pdf ↩
Interactive System Productivity Facility Version 2 What's New in ISPF? MVS and VM/SP (PDF) (Second ed.). IBM. October 1984. http://bitsavers.org/pdf/ibm/370/ISPF/GC34-2172-1_Interactive_System_Productivity_Facility_Version_2_Whats_New_In_ISPF_Oct1984.pdf ↩
"Description of the ISPF Primary Option Menu". April 19, 2018. https://help.nfc.usda.gov/publications/ISPF/11485.htm ↩
"What you can do with ISPF/PDF". IBM. 17 August 2015. https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.2.0/com.ibm.zos.v2r2.ikjp100/ikjp10046.htm ↩
Fosdick, Howard (March 30, 1987). "ISPF key in convergence". Computerworld. Retrieved October 26, 2012. https://books.google.com/books?id=hCqdKWvxFT4C&q=ispf+ez-vu+ibm+software&pg=PA28 ↩
"Why IBM Isn't King of Software". Info World. July 29, 1985. Retrieved February 6, 2013. https://books.google.com/books?id=-S4EAAAAMBAJ&q=%22EZ-VU%22+IBM&pg=PA20 ↩
IBM has announced the intention of dropping WSA. ↩