Forth was invented by Charles Moore in the 1960's as he developed specialized tools for various applications.  It was formalized into a programming language for telescope automation while Mr. Moore was with the National Radio Astronomy Observatory.  As this work was supported by public funds, Forth was born as a public domain software package which followed telescopes to many different countries.  In 1972 Mr. Moore left NRAO to form FORTH, Inc. in order to market Forth systems and services.  Implementations developed in FORTH, Inc. were proprietary and their usage required license from FORTH, Inc.  However, a copy of Forth for PDP-11 was released to DECUS, the DEC Users Group, which became the only readily available public domain Forth for many years.


Forth Interest Group was organized in 1978 to encourage the use of Forth on small personal computers, which gradually became available for individual users.  One major effort by Forth Interest Group was the formation of Forth Implementation Team lead by Bill Ragsdale to build figForth and put it in the public domain for general distribution. Because figForth was implemented on many microprocessors based on a single model and released with complete source listings, it became the de facto standard of Forth on personal computers, eclipsing polyForth which was by then the main product from FORTH, Inc.


The other major objective of Forth Interest Group was to establish a standard definition of Forth as a programming language.  Forth Standards Team was organized in 1978.  It took the Forth-77 Standard developed by Forth users in Europe and produced Forth-78 Standard.  It was very unsatisfactory and was almost immediately reworked into the Forth-79 Standard which was accepted by Forth Interest Group for promotion. However, Forth Interest Group also decided that it would not publish implementations and only encouraged Forth vendors to provided implementations and support.  The only major public domain Forth supporting Forth-79 Standard was MVP-Forth written by Glen Haydon and distributed by Mountain View Press.


Forth Standard Team continued the refinement of Forth language and published the Forth-83 Standard in 1983.  Again, Forth Interest Group supported and promoted it, but did not provided any implementation. Henry Laxen and Mike Perry felt that the Standard could not spread without a faithful and useful implementation.  They implemented a comprehensive model on 8080, 8086, and 68000 processors with fairly uniform and transparent interfaces to the CP/M and MS-DOS operating systems.  This public domain F83 model found wide acceptance, especially among IBM PC users after it was listed in the PC-SIG catalog.


From 1983 to 1988, personal computers have made significant progress in memory size and in disk space.  The traditional minimalist's approach in the Forth operating system seems to be inadequate to stay abreast with the tools and facilities embedded in the current personal computers. It is necessary that Forth must communicate with the operating system in standard file formats, and it has to address memory outside of the 64K byte addressing space.  These capabilities were included in many 68000 Forth implementations, but not in the PC world due to the segmented architecture and the handicapped operating system.  F-PC is a collective effort to provide PC users a highly optimized version of public domain Forth addressing these problems.  It allows the user a well integrated environment to develop and maintain large applications utilizing the memory and storage space generally available in a mid-range IBM PC/XT/AT and its clones.  It is released to public domain with complete source, following the spirit of figForth and F83, so that users will have the freedom to tailor it to their specific applications and to build commercial products from it.


F-PC is a greatly enhanced version of Forth derived from the F83 model for the IBM-PC, XT, or AT developed by Tom Zimmer at Maxtor Corp.  A major stepping stone between F-PC and F83 was the F83Y system produced by Wil Baden, who adopted J. D. Hooper's separated heads and many other features like interpreted conditionals, full featured decompiler, etc.  Many other people also contributed to it, including Robert L. Smith, Charles Curley, and Jerry Modrow, but the major work was done by Tom Zimmer.


In order to release this system for public usage, it is necessary to provide better and more complete documentation on the system so that a Forth programmer can pick it up and use the system productively on his own, without having to have access to Tom Zimmer for support and consultation.  A F-PC Working Group was organized to serve two very specific purposes: to do beta testing on the system to flush out as many bugs as possible, and to provide user and system documentation so that both application and system Forth programmers can use the system in isolated (in the Forth sense) geographic locations.


The F-PC Working Group was very loosely organized in the Silicon Valley FIG (SVFIG) Chapter, during the chapter meeting at April 23, 1988.  Many Chapter members participated and contributed to this effort.  The Chapter also permitted the Working Group to use the morning FORML sessions in May and June to discuss and work on F-PC.  Dr. C. H. Ting served as the focus of this Group to coordinate the efforts in documentation.  Bug reports, suggestions, and recommendation were collected and forwarded to Tom Zimmer for consideration.


This Manual is part of the documentation to be made available with the F-PC system.  It provides information on how to install F-PC, and the most useful utilities for normal programming activity. It also assumes that the user is familiar with Forth and DOS, and does not try to include introduction materials.  As F-PC retains the look-and-feel of F83, prior knowledge on F83 will be extremely helpful.  The background information can be obtained from the following sources:


Starting Forth, Leo Brodie, Prentice Hall.
Programmer's Guide to the IBM-PC, Peter Norton, MicroSoft Press.
Inside F83, C. H. Ting, Offete Enterprises.


We hope that you will find F-PC valuable as you try to make the best use of the resources in your PC or compatible computer.  We would also like to know if you succeeded in using it to develop real and interesting applications.  The User Contributions section of F-PC will always be open to new submissions.  We hope that F-PC will provide a common format for users to exchange code, ideas, and applications, the same way F83 has been over the last five years.


F-PC has evolved over the last six months.  Tom Zimmer made substantial modifications and enhancements to it.  However, due to the pressure exerted on him by many users and members in this Working Group, Tom reluctantly agreed to freeze F-PC at the current Version 2.25.  It will not be modified until late next year so that users can start using it to do applications.  Both the User's Manual and the Technical Reference Manual were updated to this version.  Having accomplished its mission, the F-PC Working Group ceases its existence.  However, technical discussions on F- PC and a very extensive tutorial lead by Jack Brown have appeared on the Forth Roundtable in the GEnie Network.  F-PC users are encouraged to join the Forth Roundtable for information, assistance, and possibly bug fixes.


Dr. C. H. Ting

Documentation Coordinator

F-PC Working Group

December, 1988

San Mateo, California