2 - Forth Interest Group
2 - Forth Interest Group
2 - Forth Interest Group
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
about projects like satellites and the Mars rover. Chuck<br />
said he perceives that antagonism to <strong>Forth</strong> has faded, that<br />
they aren't locked into ADA.<br />
Dr. C.H. Ting then demonstrated a multi-voice music<br />
program that was using the video output processor on<br />
MuP21 to generate the analog signal being played. He<br />
showed details of the design and code, and explained that<br />
he used a much slower xtal than the one used to generate<br />
the video timing for the P21 coprocessor.<br />
Tom Zimmer and Andrew McKewan are about to<br />
disappear to the jungle ofTexas. This was their last chance<br />
to talk about their 32-bit <strong>Forth</strong> (F95) for Windows to this<br />
group for a while.<br />
Andrew wrote the original C wrapper and the kernel of<br />
F95. He also ported the object-oriented code from Neon,<br />
which he said was useful as an interface to the windowing<br />
system. He discussed the issues in hosting an interactive<br />
<strong>Forth</strong> under the Windows environment.<br />
Andrew said he considered the system a good environ-<br />
ment to learn about the Windows interface, because you<br />
could test anything interactively. But he said he does not<br />
really consider it a Windows GUI development environ-<br />
ment, because it is lacking too many things. There is no<br />
icon editor, no help editor, etc.<br />
In addition to names for Windows functions, and<br />
constants for control locations in Windows, F95 contains<br />
most of the features of F-PC. The system boots from<br />
FORTH.EXE and loads FORTH.IMG. The IMG contains the<br />
dictionary and can be from 300K to 2M. The EXE file<br />
The Computer Journal ........ 6<br />
FORML ............... back cover<br />
FORTH, Inc. ...................... 23<br />
<strong>Forth</strong> <strong>Interest</strong> <strong>Group</strong> ..... ctrfld<br />
Laboratory<br />
Microsystems, Inc. ........... 10<br />
Miller Microcomputer<br />
Services ........................... 27<br />
Offete Enterprises ............ 14<br />
Silicon Composers ............. 2<br />
contains the C wrapper, and changing it would be similar<br />
to metacompiling a new kernel in F-PC.<br />
You can simply say<br />
' MAIN IS BOOT FSAVE FOO<br />
to save a FOO.EXE and FOO.IMG. You can then install and<br />
use it in Windows.<br />
Tom Zimmer extended Andrew's F95 kernel to include<br />
all the utilities and tools he needed to finish porting a<br />
multi-megabyte <strong>Forth</strong> project from a fragmented 16-bit<br />
<strong>Forth</strong> system to the 32-bit Windows system. The exten-<br />
sions include assembler, disassembler, debugger,<br />
decompiler, editor, class, objects, mouse interface, and<br />
graphic interface. A floating-point package has been<br />
added, but it requires floating-point hardware.<br />
Tom talked about the 00 extension and how, when he<br />
only needed one particular new object, he felt it was<br />
wasteful to create a new class for it. So he created a way<br />
to define such objects without having to first define a one-<br />
of-a-kind class. He also talked about headerless classes,<br />
and showed how methods are assigned to classes.<br />
Tom explained that the interpreter was a little unusual.<br />
First it looks up a word to see if it is in the dictionary, then<br />
it tries to convert it to a number, and finally, if it can't do<br />
either of these things, it performs a hash and leaves the<br />
value on the stack. This is because it assumes that it is a<br />
method and that its value should be put on the stack so the<br />
object can resolve it at runtime. Objects match the method<br />
value to those in their own list of methods to find<br />
executable code.<br />
<strong>Forth</strong> Dimensions 27 July 1995 August