User Tools

Site Tools





Sidebar

reviews:basictools

Back to reviews

LOAD "BASIC TOOLS REVIEW"

Classification: Utility
Publisher: Loadstar (Softdisk, Inc)
Programmer: Multiple
Year: 1985 - 1997
Disk: Basictools.d64

I've noticed that, since the release of RetroGames' TheC64, there have been a few people interested in learning (or re-learning) how to program in Commodore BASIC 2.0. Although I'm not very good at it, I really do enjoy programming in BASIC, myself. However, for those people just getting into it, it can be a little frustrating at times, just because it lacks some of the conveniences of other versions of the language, like BASIC 7.0 on the C128.

Over the years, Loadstar published some very helpful utilities to make the task of programming in BASIC 2.0 a little more enjoyable. In this review, I'm going to take a look at four of the tools they published that I have enjoyed using. I hope, for those of you just getting to know TheC64 and TheC64Mini, you find these utilities useful, as well.

Loadstar Basic V2

Programmer: T. L. Flynn
Published: Issue #170

Out of all of the programs covered in this review, Loadstar Basic V2 is the one I use the most. It's a relatively simple program, but very useful when it comes to programming and debugging in the C64's screen editor.

To use it, all you need to do is LOAD“B.LS BASIC V2”,8 from the disk, and then RUN. The program will then load a bit of code into higher memory, and then put you at the command prompt. You will notice that, rather than having the standard 38911 BASIC bytes free, you now have 37887 to work with.

Loadstar Basic V2 is ready!

LS Basic V2 doesn't alter BASIC or how your program functions. It only changes the performance of the BASIC screen editor. Rather than the default light-blue on dark-blue colour scheme, you have an easier to read light-blue on black arrangement. The line that you are currently editing is highlighted in dark-blue, to help you focus on that particular line of code, when you have a screen filled with your program listing.

In order to help you differentiate line numbers from the rest of your program, LS Basic V2 prints them in white, which I find to be really helpful.

Program listing

I think the most useful feature of LS Basic V2 is that it replaces BASIC's Syntax Error routine. When an error is detected, typically, BASIC will just kick you out of your program and report a Syntax Error in line xx. But the new routine will not only report the error, it will also print the line the error is in and plunk your cursor down at the spot at which the error occurred.

Like in this example, in my program I mis-typed the GET command. To correct it, all I have to do is make the appropriate changes to the line and press RETURN, rather than LIST the line myself and cursor over to the error. That's a real time saver when debugging code.

Syntax Error routine

Basic Linker

Programmer: Parviz Naser
Published: Issue #48

Basic Linker is a utility that makes up for the fact that BASIC 2.0 does not have an APPEND command, like BASIC 7.0 does, on the C128. Although I haven't had much use of a utility like this, I can see that many coders would probably find this ability useful.

First, load up Basic Linker into memory like this: LOAD“BASIC LINKER”,8 and then RUN. You will then be presented with the program's instruction screen:

Basic Linker screen

In this example, I have two very (very) simple programs that I wish to link together, called PROG1 and PROG2

PROG1 PROG2

To link these two together, I first LOAD“PROG1”,8 and then type SYS828 and RETURN. Then, I go ahead and LOAD“PROG2”,8 and then type SYS856 and RETURN.

The commands

And now, the two programs have become one. You can keep doing this as many times as you wish, to combine several different programs together.

Two programs combined

You should note, however, that the program works best if there are no overlapping line numbers in either of the programs. Also, each program should have line numbers that are greater than the program proceeding it. It will work if, say PROG1 had line numbers from 100 to 300 and PROG2 had line numbers 10 to 90, but when you list your combined program, it will look very strange and be a real hassle to edit.

But, if you do need to renumber your line numbers so you can easily combine them, then the next program in this review is right up your alley!

Basic Renumber

Programmer: Charles Moehringer
Published: Issue #11 and PowerPlay Mag. 1985

This is something that I find myself doing when I start a new program: I don't leave myself enough room between line items in my code to soon discover I've just coded myself into a corner. Like this:

A programming dilemma

So here comes Basic Renumber to the rescue! It's a simple little utility that automatically renumbers lines of code, giving your program room to grow, where none existed before.

To use it, simply LOAD“RENUMBER”,8 and then RUN. You will be presented with the parameters screen. You will be asked for the name of the program you want to renumber, followed by the line number you wish to start with and the increment you wish to use for each line.

Once you enter that, the program goes to work by renumbering each line of code, also taking care of associated GOTOs, GOSUBs, etc.

Renumbering in progress

When the program is all done, you'll have a nicely coded BASIC program all ready for further development.

A properly numbered program

Quikrunch

Programmer: Jeff Johnson
Published: Issue #17

Quikrunch is an amazing utility that will take your BASIC program and make it as small and fast as possible, without having to turn it into Machine Language. It will analyze your program, line by line, and puts as much of it as possible into one line. It's smart enough to know not to “crunch” things like IF statements and other commands that could damage the logic of the program.

As as result of this “crunching” of code, your program will run faster because of it's smaller size, which allows the C64 to scan it faster and determine which command to execute next.

To use Quikrunch, simply LOAD“QUIKRUNCH”,8,1 (make sure you use the ,1) and then NEW (not RUN). The next thing you do is load your BASIC program normally. Once it's loaded, enter the command SYS49152 and then press RETURN.

In my example, I ran Quikrunch on my Tea Timer program with the following results:

Quikrunch about to run

The thing to note about running Quikrunch on your programs is, make sure you keep a copy of them “un-crunched.” Once the crunching is done, they become very difficult to decipher if you ever need to make corrections or changes. Also, the program strips all REM statements to save on space.

A crunched program

Summary

I hope you found something in this review useful to you, as you work away at programming in Commodore BASIC 2.0. Although there are modern-day tools and resources that make coding in BASIC much easier than working on the actual hardware, utilities like these help those of us who desire the “authentic experience”.

For a few more examples of advanced BASIC options, check out the Documentation section on my Media page. I have posted printed manuals there for NuBASIC, B+, BASIC 4, and Star BASIC; all very good enhancement tools for the C64s BASIC 2.0.

Just keep in mind that, BASIC 7.0 in the C128 can do many of these things on it's own. Also, many of the BASIC command enhancement found in utilities like NuBASIC or BASIC 4 are already in BASIC 7.0, too. So, it may be something of interest to you to look at doing your BASIC program on the C128. We C128 owners are always glad to see more programs written for our beloved 8-bit PCs.

Happy coding!


474 visitors

reviews/basictools.txt · Last modified: 2023/02/02 14:45 by David