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.

DFX debugger

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.

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.

The Breakpoint Manager illustrated above was created with the resource compiler

GUIgen

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.

GTK+ Cross Platform GUI

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:

Windows Constants

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

DDE

… 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.

How many generations?

We have had to abandon support for Windows 95/98 and Windows 2000. We no longer have PCs or Virtual Machines 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. We do not do anything deliberate to break operation on Windows XP, but if a new feature will not work on XP, that’s just too bad. Similarly for Vista.

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.

Ordering

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.

Advanced Technical Support

Courses, Consultancy

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.

New from mpe – click on title for more information

Southampton, UK – 04 May 2016 – MPE today announced Interactive C support for ARM architecture via SockPuppet. The later a bug is found in the design cycle, the more design costs increase. Interactive debugging and adding test harnesses from the start ensures the code stays close to the initial […]

VFX Forth version 4.7 VFX Forth features common to all versions VFX Forth for Windows VFX Forth for Mac OS X VFX Forth for x86 Linux VFX Forth for ARM Linux VFX Forth for DOS There are new library interfaces to libcurl, libiconv, SQLite3 and zlib. Additional notations have been […]

Forth 7 cross compiler and targets Professional version includes PowerNet In detail … Version 7 of the MPE Forth cross compiler produces over 500 kb of binary code per second. There are many detail improvements to the compilers and the target code. The first major item for users of 32 […]

Lite cross compilers Lite compilers are for Windows only; they run well under Wine and other Windows emulators. Lite compilers are free of charge and are for non-commercial use only. If you want to commercialise your project just upgrade to a compatible Stamp, Standard or Professional compiler with more […]

We have considered many schemes for increasing the use of Forth. In the embedded world, the situation has become that you can download free (of charge) versions of many compilers for many programming languages. We feel that we have to do the same to reach new users and promote the […]

I was trying to avoid some work, and stumbled across this post (republished with permission) on one of the LinkedIn discussions. If you are at all interested in software reliability, Les Hatton is someone to respect. I was lost on LinkedIn (not for the first time) and spotted this discussion. […]