Last updated: 10 June 2015
Our website has been updated -
to transfer to the new website. Thanks!
- Studio development environment - interactive development tools with source that bolt directly into the VFX Forth console.
- DFX debugger - interactive single step debugger with source that bolts directly into the VFX Forth console.
- Windows Resource compiler - easy user interfaces from RC files.
- GUIgen - easy user interfaces in the Forth style.
- GTK+ Cross Platform GUI
- Examples and libraries.
- Compatible with Windows XP, Vista, 7 and 8.
- Compatibility with other MPE Products.
- Support services - standard, extended and advanced technical support.
- Courses and consultancy - start up courses or consultancy using VFX Forth for Windows.
- Common features in all VFX Forth systems
- See also - VFX Forth for Mac OS X
- See also - VFX Forth for x86 Linux
- See also - VFX Forth for ARM Linux
Visit our papers page to download our VFX Flier and benchmark code and results.
Get the free download of the evaluation version of VFX Forth. No time out!
For the licence terms, see the licence.
See a Serbo-Croation translation of an earlier version of this page by Anja Skrba here.
CCS Candy application
Studio Development Environment
The Developer Studio IDE is provided as full source code, and includes features such as the dictionary browser which allows you to find, decompile, and locate the source code of any word in your application, or even in the VFX Forth kernel. The Studio IDE provides user definable hooks to any text editor for editing or source location. You can add your own extensions to the Studio IDE for improved productivity.
- Debug Console
- State Monitor
- DLL scanner
- ASCII chart
- RC file stripper
- Win 32 API help
- State save/restore
Click here for more details.
Console and Breakpoint Manager
Provided with the Studio IDE is the DFX debugger, featuring single stepping, tracing, instruction logging and watchpoints at the assembler or Forth source code levels. Like the rest of the Studio IDE, DFX is provided as source code.
- Register display
- Assembler view
- Instruction trace
- Stack displays
- High level view
- LOCATE and XREF hooks
- Memory views
- State save/restore
- Debug Forth Interpreter in a separate thread
- "Narrow down" mode for rapid fault location
Click here for more details.
Resource File Compiler
VFX Forth includes a resource file compiler that permits the use of standard resource files. Unlike other applications, these files are compiled directly as part of the normal compilation process, and can be edited by hand or by a resource editor. VFX Forth supports all the standard Windows controls. The following code is taken from the VFX Forth front end.
#define IDW_FORTHWINDOW $3801 IDW_FORTHWINDOW WINDOW 0, 0, 100, 100 BEGIN Caption "Forth Console" Style WS_CHILD | WS_VISIBLE | WS_CAPTION | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX ExStyle WS_EX_MDICHILD ClassStyle CS_HREDRAW | CS_VREDRAW Icon IDI_APPLICATION Cursor IDC_ARROW Brush WHITE_BRUSH Menu NULL WndProc ForthWindowProc END
The Breakpoint Manager illustrated above was created with the resource compiler
GUIgen is a way of simplifying construction of GUI interfaces in a "Forth-like" manner. It has been used for several years to build production user interfaces. A number of features have emerged which are generally and genuinely useful. These are (in no particular order):
- Window classes, windows, dialog boxes and controls are each defined in a similar way.
- The difference between "modal" and "modeless" dialog boxes is largely hidden.
- All Windows controls are "automatically" subclassed which allows you to add control-specific message handlers simply without dealing with subclassing in Windows.
- New window controls can be defined extremely easily.
- Controls can be "placed within" dialog boxes as is usual but in addition they can be placed within normal windows and within other controls.
- Each window, dialog box and control has its own private data area.
- Words which are designed to be executed inside a WndProc procedure can be tested at the keyboard.
The following code is for a dialog box and is taken from one of the example files.
DialogBox: TextDlg 50 10 110 50 Position&Size Modal Caption "Enter Name" WS_VISIBLE Style WS_CAPTION WS_POPUP or Style+ WS_BORDER Style+ 8 100 0 Font "MS Sans Serif" 5 5 100 12 IDC_EditBox z" Hello" EditBox 10 25 40 15 IDC_OK z" &OK" PushButton 60 25 40 15 IDC_CANCEL z" &Cancel" PushButton WM_INITDIALOG does TB-DoInit WM_COMMAND does TB-DoCommand end-dialog
GUIgen is documented in a separate manual, which is currently over 160 pages.
Simple dialog box
Grid control in a window
GTK+ Cross Platform GUI
It's cross platform, so it's one of the common features.
Windows API Access
VFX Forth can access all the standard Windows API calls, as well as functions in any other DLLs. The function interface allows API calls to be defined by cut and paste from other language reference manuals, for example:
EXTERN: int PASCAL CreateDialogIndirectParam( HINSTANCE, void *,HWND, WNDPROC, LPARAM ); EXTERN: int PASCAL SetWindowText( HANDLE, LPSTR ); EXTERN: HANDLE PASCAL GetDlgItem( HANDLE, int );
VFX Forth incorporates a support DLL that provides development-time access to over 28,000 named Windows constants without impacting the size of the application. Windows constants such as GENERIC_READ are treated as literals and are fully optimised.
Examples and Libraries
VFX Forth comes with a wide range of application examples including versions of the classic examples from Charles Petzold's book "Programming Windows". Examples and libraries include:
- ForthEd2 MDI editor
- Studio IDE source code
- DFX debugger source code
- FCOM - ActiveX/Com interface
- FTP interface
- Web server
- Email sender
- DLL generation
- ... and much more
Examples common to VFX Forth, regardless of operating system, include this list
Powerful Testing and Debugging Aids
VFX Forth includes extensive programming aids, including the ability to run your application in one or more windows while you monitor its functions using a separate State Monitor window and the Studio debugger.
Tools such as the Dictionary Browser and online help make programming a breeze. The Dictionary Browser lets you call up any of the hundreds of functions supplied with VFX Forth or added in your application, and either decompile it or dump its memory area. On-line help documents all standard VFX Forth words using HTML help. You can modify these and produce your own help files, which can be added to the Studio IDE.
Compatible with Windows XP, Vista, 7, 8
VFX Forth for Windows is a 32-bit Forth implementation for 32 and 64 bit versions of Windows. VFX Forth supports access to all third-party 32 bit DLLs.
- Any version of Windows XP, Vista, 7, 8.
- A maths co-processor is required for floating-point maths.
How many generations?
We have had to abandon support for Windows 95/98 and Windows 2000. As of November 2012, we no longer have PCs with these systems. We can just about cope with three generations of the operating system - anything more is impossible to guarantee.
A number of our clients have made similar decisions. Defining Windows XP, service pack 3, as the lowest supported system seems to be a common decision.
Compatible with other MPE Products
The VFX Forth kernel is source-code compatible with MPE's Forth 7 cross compilers, and compatibility for earlier versions of VFX Forth for Windows and other MPE Forths has been made simple.
VFX Forth is available in four editions, which differ in the level of source code provided:
- Evaluation: Free download from this website. The full system with a short nag screen, no timeout, no kernel sources, no turnkey generation and no PowerNet.
- 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. One year of tech support and upgrades.
- Professional: Full system with the PowerNet web server, all kernel sources and the MPE Forth 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 compilers for all supported CPUs and operating systems, and full source for all support tools, including the cross compilers, executable file generator, and support DLLs. 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.
For pricing, see the price list.
MPE has been supporting professional Forth users since 1981. We offer the following services:
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 four 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.
MPE can provide start up courses or consultancy using VFX Forth for Windows. The MPE course "Programming Windows with VFX Forth" is for VFX Forth, "Embedded Software for Hardware Engineers" covers cross compiling, and "Architectural Introduction to Forth" is a Forth conversion course. Contact MPE to find out more.
Go to the pricelist page