"Those who foresee the future and recognize it as tragic are
often seized by a madness which forces them to commit the very
acts which makes it certain that what they dread shall happen."
Dame Rebecca West
SOFTWARE REVIEW: "ERGO!pro" 2.0 "GFA BASIC" DEVELOPMENT SYSTEM
by Richard Karsmakers
When I worked at Thalion software - I keep on referring to that
period of my life, don't I? - I worked closely together with the
designer of large classic role playing games like "Amberstar" and
"Ambermoon", a guy called Karsten Köper.
I forgot if it's Karsten or Carsten. Forgive me, please.
Anyway, apart from designing the games he also coded a game
design utility, fully in "GfA Basic". He was quite a "GfA Basic"
expert and he taught me a lot of the tricks I now know.
To cut a long story short, he used a development environment
allowing him to quickly launch the interpreter, the compiler, and
various cross-referencing and debugging thingies. It was called
"Weller Tools" and it was really nice. It has extensive analysis
functions that would find global variables that could be defined
locally, it could even find a lot of typos that are normally so
hard to find. It had a few disadvantages, of course, the most
major of which was the fact that it only worked on .LST files.
I never did get round to using it myself, even though I got a
limited demo version of it some time ago. It also only worked on
ST-specific resolutions only, and as I got it after having
acquired a Falcon I quickly lost interest (like I did with
"Tempus", that I direly miss sometimes).
Some time ago I found the answer to all my "GfA Basic"
development prayers, and it was called "ERGO!pro", developed by
Columbus Soft's Christof Schardt in close connection with Gregor
"FlyDials" Duchalski.
For starters, it works on any system you hurl it at. It's GEM-
driven (unlike "Weller Tools"), looks extremely slick, allows for
various pre-set "projects" and works on .GFA files. And it's
fast, too.
Projects
Suppose you're developing several programs in one go. I myself
am constantly developing ST NEWS and the "Ultimate Virus Killer",
and right now I'm also sortof occupied doing "Brain Replacement
Utility". You can define "projects" which determine the source
file to be loaded, additional project-specific further files that
can be executed right from "ERGO!pro", and even the path and
filename of the "GfA Basic" interpreter and compiler (this is
useful if you have to compile some stuff with a patched version
of the compiler whereas other stuff - like ST NEWS - has to be
compiled using the unpatched one). These are called "GfA Basic
Sets".
X-Ref
Apart from quickly organising the various files and all that
stuff you need when designing and programming in "GfA Basic",
"ERGO!pro" also features extensive cross-referencing of .GFA
source files. You can create a cross reference file that will
come up with suggestions for improvement, double variables names,
possible typos and all kinds of other sometimes weird and
wonderful things that are highly useful when you're programming.
It's even possible to make semi-primitive flowchart diagrams of
your software!
The neat thing is that you can access this list of suggestions
and possible bugs from the "ERGO!pro" help accessory (see below)
right from within the interpreter, allowing you to systematically
adapt your code without having to exit the interpreter each time.
ERGO!pro Help Accessory
This is one of the powerful features of the "ERGO!pro" package.
It consists of two modes: HELP mode and XREF mode.
HELP mode is a kind of hypertext-like system that basically
replaces the "GfA Basic" manual. And the really cool thing is
that it will check on which line the interpreter cursor is and
display the HELP file segment of the command/function/whatever
that is on that line. There really is no quicker way to find HELP
anywhere.
XREF mode allows you to go through a source file's "Xref" file
from within the interpreter, like mentioned above. A highly
useful option. I should also mention it's lightning fast, totally
unlike what I remember of "Weller Tools".
ST Guide Support
As of "ERGO!pro" version 2.0, all help screens within "ERGO!pro"
are hyper-linked through support of "ST Guide" (either as an
installed accessory or a program file with its path specified).
This should not be confused with the "ERGO!pro" help accessory
which uses its own - though similarly hyper-linked - system.
Basically, "ERGO!pro" dismisses with the "GfA Basic" manual
through its HELP accessory as well as with its own through this
intuitive and flexible own help system. Every dialog has its own
small "HELP" button, so assistance is never more than a
mouseclick away.
Pre-Processor
Another really powerful function incorporated in "ERGO!pro" is
the pre-processor. This allows your "GfA Basic" source files to
be altered in some way before they are compiled. Basically it can
do three things: 1) It can cause specific procedures, lines of
code or entire segments of code to be skipped (like diagnostics
routines and such), 2) It can replace/insert symbolical variables
(such as date and time) and 3) It can automatically remove any
unused procedures. Using the pre-processor, I reckon it's also
very easy to make several different versions of one program
without having to have several different source files.
Concluding
"ERGO!pro" is a highly versatile and extremely powerful tool
that will earn its price back right away. Apart from program
development suddenly becoming a lot quicker, easier and more
comfortable, it also gains extra years of life and prevents grey
hairs and bald patches from arising prematurely. It's very fast,
well-behaved and capably programmed. Its built-in on-line
context-sensitive help screens make it a breeze to work with,
too.
As a matter of fact the only thing that seems not to work
flawlessly is window refresh when the "Warp 9" screen accelerator
is switched on - and that may not even be a "bug" in "ERGO!pro",
I venture.
Columbus Soft
Dipl.-Ing. Christof Schardt
Kinzigweg 1
D-64297 Darmstadt
Tel/fax: ++(0)6151 - 596875
Email christof_schardt@f.maus.de
And...er...I forgot its price, so you'd better contact him if
you want to know. An English version is in the making.
Thanks to Christof Schardt for sending the program! You have
made my coding life a more comfortable one!
Disclaimer
The text of the articles is identical to the originals like they appeared
in old ST NEWS issues. Please take into consideration that the author(s)
was (were) a lot younger and less responsible back then. So bad jokes,
bad English, youthful arrogance, insults, bravura, over-crediting and
tastelessness should be taken with at least a grain of salt. Any contact
and/or payment information, as well as deadlines/release dates of any
kind should be regarded as outdated. Due to the fact that these pages are
not actually contained in an Atari executable here, references to scroll
texts, featured demo screens and hidden articles may also be irrelevant.