MPE Logo
MicroProcessor Engineering,
Limited
"More real, less time."

Main page & What's new?
Information and Services 
MPE Software 
MPE Hardware 
Development Hardware 
Free Downloads  
Pricelist 
Contact Us or Place an Order 


VFX Forth
VFX Forth for Linux

Last updated 3 March 2008


Features  

VFX Forth for Linux is 32 bit x86 Forth built from the VFX Forth code tree; please refer to the Windows version for more a more detailed description of aspects such as code generation. Free downloads are available from the Southampton server. Login as "public" with a blank password. Please read the file ReadMe.Linux.txt before you install the system. The 32 bit VFX Forth for Linux version is available in rpm and deb packages for 32 bit and 64 bit x86 Linux variants. It also works on FreeBSD with the Linux compatibility layer installed. Please send beta test reports to stephen at mpeforth dot com. New releases are usually uploaded on Wednesday afternoons.

The current release includes more features and a version for embedded use on 386 and 486 class CPUs, such as those in the Ebox family of low cost industrial/network PCs. See the News, Gossip and Rumour page for more details.

The release notes for all versions of VFX Forth can be found here.

INI file system

IniParser is a configuration file system that can be used with source compatibility under both Linux and Windows operating systems. The generated files are compatible with Window INI files. Apart from being usable in your applications, it is the basis of the VFX Forth Linux configuration storage system.

PDF help system

The new help system allows you to type

HELP 
from the console to access the correct page of the PDF manual. You can select which PDF viewer to use.

The Linux constants library now contains several thousand Linux constants extracted from C header files. Used with the "cut and paste" Extern mechanism for shared library interfacing, interactive access to Linux has never been easier.

VFX Code Generator

MPE's VFX Forth products have consistently proven themselves to be the fastest Forth systems available. The benchmarks to prove it are on our web site. The v4 release includes many detailed changes to the code generator making v4 even faster than before with no increase in code size.

VFX Forth‘s VFX code generator generates native code with optimisation and inlining. Using mainstream compiler techniques the VFX optimiser can merge many Forth words and reduce memory access to a minimum.

Users of previous threaded code systems such as ProForth for DOS should note that applications can be expected to run over ten times faster, and that writing CODE definitions is now unnecessary.

Local Variables

Modern programming regularly requires the use of temporary buffers and variables. VFX Forth incorporates MPE’s extended local variable syntax as well as the default ANS syntax. Of course these are fully optimised by the VFX code generator. The following example is taken from the DOS environment string handler. Var$ and Dest$ are named inputs and temp$[ is a local buffer.

: GetEnvVar	\ var$ dest$ --
\ *G Extract the environment variable *\i{var$} and place its
\ ** string value at *\i{dest$}. Both strings are counted strings, e.g.
\ *E  c" COMSPEC=" root-buff GetEnvVar
\ **  root-buff count type
  { var$ dest$ | temp$[ #256 ] -- }
  ...
;

Robust Exception Handling

VFX Forth uses the ANS Forth CATCH and THROW mechanism for nested exception handling. Exceptions generated by Linux signals, e.g. divide by zero, can be routed to generate a Forth THROWs

Source Management

VFX Forth includes a cross reference tool that allows you to find out and display where words are used, and also to find out which words are unused for final code reduction. Just type LOCATE <name> and the source code for <name> is there on the screen for viewing or editing. XREF <name> will tell you where the word is used, and XREF-UNUSED will tell you which words in your application have not been used.

Examples and Libraries

VFX Forth comes with a wide range of application examples.

Libraries include multitasking, floating point, serial and socket-based communications, benchmarks, BNF parsers, binary overlays, full file system support, and more than a dozen application-oriented examples to get you off to a flying start.

DOCGEN Documentation and Help Generator

Built into VFX Forth, the DOCGEN system can produce documentation for code while it is being compiled. DOCGEN processes formal comments in your source code, extracts them, and formats them into word processor files in HTML, PDF, TEX or user definable formats. Now your source code can include an up to date manual for your project! The VFX Forth manual is itself built this way. The following example is part of the source code for selector chains.

: exec-chain? \ i*x n addr -- j*x true | n FALSE ; MPE.0000
( *G Run through a given chain using TOS as a selector. If a match is )
( ** made execute the relevant code block and return TRUE otherwise )
( ** the initial selector and a FALSE flag is returned. )
   ...
;

The result is the automatic generation of the glossary entry for this word in the manual. DOCGEN allows multiple files and sections, table of contents, titlepage generation, several levels of headings, special facilities for examples, and a choice of public or internal release documentation.

Internationalisation

The file LIB\INTERNATIONAL.FTH permits full internationalisation of applications according to the ANS draft standard for internationalisation.

You can define text messages to be internationalised. A simple set of hooks allow you to export text for translation and later reloading at run time.

Rapid Development

Conventional programming requires you to use an editor, language compiler, resource compiler, and finally a linker before even a small change can be tested. With VFX Forth, you just make your change using your favourite editor and recompile directly into executable form in seconds.

VFX Forth includes all the tools you need to create bound turnkey DOS applications.

System Resources Give You Full Control

VFX Forth provides a complete set of system resources and development tools to give you maximum control over your application. These include:

  • Binary overlays
  • Dynamic heap management
  • 80386/387 assemblers
  • Turnkey application generator

VFX Forth includes all tools required to compile, test and create bound versions of your applications for distribution.

System Requirements:

  • Any version of x86 Linux with 32 bit libraries, e.g. any Red Hat or Debian distribution or derivative.
  • A maths co-processor is required for floating-point maths.

Compatibility with other MPE Products

The VFX Forth kernel is source-code compatible with MPE’s Forth 6 cross compilers, and compatibility for other versions of VFX Forth for Windows or DOS and MPE's Forth 83 standard products has been made simple. A harness exists to ease conversion from ProForth v2.x.

Ordering

VFX Forth for Linux is available in four editions, which differ in the level of source code provided:

    Evaluation: Free download from this website. The full system with no timeout, no kernel sources, no cross compiler, no PowerNet and minimal technical support.
    Standard: Full system with turnkey application generation, full kernel sources except for the VFX code generator but no cross compiler or tool source code. No PowerNet. 90 days of tech support and upgrades.
    Professional: Full system with the PowerNet web server, all kernel sources and the MPE Forth 7 VFX 386+ cross compiler. With this system you can modify and extend the VFX Forth system. Requires a Non-Disclosure Agreement to be signed. One year of tech support and upgrades.
    Mission: Full system with all sources and cross compiler, and full source for all support tools, including the cross compiler and shared libraries. Requires a Non-Disclosure Agreement to be signed.

Note that educational users can obtain all the VFX Forth editions at a 50% discount.

Upgrades are available from one version to another.

Support Services

MPE has been supporting professional Forth users since 1981. We offer the following services:

Standard Support

Fax and email hotline technical support on the use of VFX Forth. Within 3 months of purchase any updates are provided free of charge.

Extended Technical support

  • All upgrades as they are released from development, usually 4 times per year
  • Direct access to the development team
  • Involvement in the development cycle
  • Annual fee

Advanced Technical Support

  • Forth Programming Courses
  • Custom Application Design
  • Programming Services

Go to the pricelist page


TopReturn to Top HomeReturn to HomePage