An Ideal Basic?

Allan Knopp takes a look at Computer Concepts' FAST BASIC

 

Issue 26

Mar/Apr 87

Next Article >>

<< Prev Article

 

 

I like Basic, it is a friendly language. Unlike compiled languages it is possible to experiment and see the result immediately. Basic does however have some disadvantages. There is the rather sedate pace at which it goes about its business and, on the ST, a lack of easy access to the useful functions of GEM.

When I got an ST, I expected the bundled ST Basic to run appreciably faster than the 8 bit version. Unfortunately, although there is an increase in speed over 8 bit Basic, this doesn't seem to reflect the superiority of the hardware.

I won't dwell on the faults of ST Basic, but I think it is sufficient to say that it is just not as good as it could (should?) be.

AN IDEAL BASIC?

After using ST Basic for a couple of months I had a mental list of what would make, in my opinion, an ideal Basic for the ST.

- It should make full use of the hardware and be very fast.
- It should have a better screen editor than the cumbersome ST Basic editor, I find all those windows just get in the way.
- It should give easy access to GEM functions.
- It should come on a cartridge to leave the maximum of memory free, and to make loading faster.

Computer Concepts have now released Fast Basic, which I think comes pretty close to being my ideal Basic for the ST. It comes on a cartridge which plugs into the ST's cartridge port and can be left permanently in place. Packaged with the cartridge is a comprehensive manual, a quick reference card and a set of demonstration programs and utilities on disk. All very comprehensive. Let's take a look at what you can expect.

THE SCREEN EDITOR

The screen editor makes sensible use of windows. It has two windows on screen at boot-up, the input window and output window. Also available is an immediate mode window which can be opened by clicking on the appropriate menu item.

There are four font sizes available for use while programming. There is also a pretty full set of word processing facilities such as search & replace and cut & paste, all of which make editing a program a much simpler task. It is possible to load ST Basic programs into Fast Basic. Some of course won't work without almost re-writing them but some of the simpler ST Basic programs only need minor changes. Using the search & replace function greatly simplifies this operation. I have done this with several ST Basic programs and found that the programs ran about six times as fast when converted to Fast Basic. I should stress that this wasn't intended to be a proper test of the speed of Fast Basic but it certainly gives an indication of what might be achieved.

STRUCTURE

Fast Basic seems quite close to BBC Basic in general syntax, it makes use of procedures, and a generally structured style of programming is encouraged.

Line numbers are optional, but they are really only used as labels. It is still possible to GOSUB or GOTO a line number, but it is preferable to write around named subroutines or procedures. Having used 8 bit Atari Basic for some time I was surprised to find how easy it is to program in this way. It makes a program much more readable and easier to change and develop.

KEYWORDS

There are all the usual keywords that you would expect from any good version of Basic and, in addition, there are a large number of extra keywords which are specific to the ST. It is rather strange though that with approximately two hundred and fifty keywords, plus more than sixty GEM commands, there are only three sound commands. One of these is BEEP which gives a bell sound. The others are DOSOUND and SNDREG which both seem difficult to understand and there is not sufficient information in the manual about them nor any examples on the demo disk. I am sure that some good sound can be produced, but compared with the comprehensive range of other keywords it seems that sound has been more than a little neglected.

GRAPHICS

Fast Basic is packed with graphics functions. All the normal graphics commands - LINE, CIRCLE, FILL etc. are supported. Additionally there are a multitude of commands which, as far as I can tell, cover every possible requirement. For example blocks of screen memory can be manipulated using the GRAB, PUT and BLIT commands. Page flipping is easily implemented using the PHYSBASE and LOGBASE pseudo variables. GEM is also comprehensively supported.

Every GEM function that you are ever likely to require is available. Most of the GEM commands are simple to use. For example drop-down menus and alert boxes are very easy to implement. It is possible to produce very professional looking GEM based programs with a minimum of programming.

ASSEMBLER

Fast Basic comes with a built-in assembler which can be accessed from within a Basic program. Basic and assembly language can be used together in the same program and the code for both languages appears in the same file.

PROGRAM SEGMENTS

It is possible to have up to ten programs in memory at the same time. Fast Basic divides the memory into segments, putting one program into each segment. Each program can be edited and run independently from the other programs in memory. It is possible for a program to call and run a program in another segment using the PERFORM command. The END statement will cause a program to return to the original program.

THE MANUAL

Packaged with Fast Basic is a comprehensive manual. It is laid out with one keyword per page with an explanation of the purpose and syntax of the keyword, together with a short example of how it is used and a list of associated keywords.

DEMO DISK

The disk which comes packaged with Fast Basic contains a number of example programs. These provide an excellent reference for any problems which may arise when programming. Also on the disk are several utility programs. One of these enables a Fast Basic program to be turned into a desk accessory. Another of these utilities turns a Fast Basic program into a PRG file which, when opened, runs Fast Basic and autoruns the program. It appears as though the program is running on a stand-alone basis, but the Fast Basic cartridge must be plugged into the the computer for the program to run. Computer Concepts have now, however, released a utility which will convert Fast Basic programs into completely stand-alone files.

A third utility on the disk enables synthesized speech to be produced. This is an excellent utility, the speech produced is of quite a high quality and is fairly easy to program.

SUMMING UP

Fast Basic is an excellent product. It has many more commands and facilities than I could possibly describe here. It is similar enough to other Basics to make switching from other dialects of Basic to Fast Basic quite easy. It also has many commands which are entirely specific to the ST. It combines the ease of programming and interactivity of Basic with the ability to program GEM applications. It also lives up to its name - it is very fast.

If you have an ST and want to program in Basic then you really must buy it. In an ideal world it would have been the Basic which was bundled with the ST by Atari. Fast Basic is a product that is every bit as good as the hardware it was written for.

top