reviews:basictools

Back to reviews

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

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: In this example, I have two very (very) simple programs that I wish to link together, called PROG1 and 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. 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. 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: 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. When the program is all done, you'll have a nicely coded BASIC program all ready for further development.

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

Summary