Device running Palm OS 3.0 or later
150 K free RAM
10MB Free Disk Space
Since this review was posted, there have been many updates to this software. You can view the changes here.
NS Basic Corporation has done it again
with their new NS Basic/Palm programming development environment. NS Basic is an easy to use
Basic-like scripting language that has been available for the Apple Newton, and Windows CE
Palm-size PC devices
for awhile now. It is now available for Palm OS devices running Palm OS version
3.0 or later.
This version of NS Basic is different than the Newton and Windows CE
Palm-size PC devices version. Those versions required you to actually do the programming
on the PDA itself. Although this worked well enough, it was tedious to work on
those small devices. NS Basic/Palm allows you to write your code on your desktop PC
using a graphical environment that is very similar to Microsoft Visual Basic.
Actually writing a program is pretty easy if you know anything about the
Basic programming language. And it’s not that hard to learn if you’ve never
programmed before thanks to two tutorials and lots of example code that are
included with the NS Basic/Palm package. I’ve not programmed for awhile and have
never considered myself a real programmer. I like to piddle around here and
there but don’t get into anything really complex. As a result, I was able to sit
down and create a program from start to finish in about an hour using NS
Basic/Palm. The program I created converted degrees in Fahrenheit to degrees in Celsius or
visa versa. Ok, I know it’s not exactly exciting but it was a good test to see
how the NS Basic/Palm environment worked.
The first thing I did was create an icon for my program using the included
IconMake program. This is a pretty simple program to use. You basically just
draw your icon on the screen using a grid and turn the pixels on or off to make
the image. You can draw a regular sized icon and a small icon. I noticed a
couple of weird things about this program. One is that the grid is oversized.
The first time I drew an icon, it ended up being cut off when it was on my Palm
V. There is a red and a blue outline on the grid. These outlines show the large
and small icon boundaries. I’m not sure why the grid is larger than it needs to
be. The other little thing that I had problems with was the Circle tool. You’re
supposed to be able to draw circles… This rarely worked for me. My circles
ended up being cut in half or too large. I’m not sure what the
problem was. It would be nice if this feature would let you see the circle as
you drew it. They way it works, you click on a spot on the grid and then drag
your mouse across the grid for the size circle you want. But, you can’t see the
circle grow in size as you drag the mouse…
After creating my icon, I started up NS Basic and created my screen layout. I
added the buttons, text fields and labels that I wanted. Doing this is really
easy. You just click on the object in the toolbox that you want to add to your
screen and then click on the screen layout window. After you have the object on
the screen, you can resize it and move it to the exact spot you want.
The main window of the application displays the current screen layout that
you’re working with on the left and the project explorer on the right. A toolbox
with the different buttons and gadgets is displayed on the left side of the
screen. This layout works really well. You can easily see exactly what your Palm
screen will look like when the program is finished because you work with an
exact replica of it.
From the toolbox you can easily add 13 different screen objects to your
screen layout. You can have the following objects:
Oval shaped with a text label inside.
Rectangular shaped with text inside. When selected the button turns black
and the text inside turns white.
Small square rectangle with a text string beside it. When the box is set, it has
a checkmark in it.
Text box with a pull down list of items.
Text strings that can be displayed on the screen.
Box that is usually used to select the date or time.
Like a regular button but code gets executed over and over if you hold the
stylus down on it.
An area where the user can enter data.
User defined object that is invisible. You can use this to make a bitmap seem
like a button.
An up arrow that will be displayed if the Graffiti input mode is in uppercase
A list of text strings.
Vertical bar that has arrows at each end.
After I created the layout that I wanted, I then started naming all my screen
objects. If you are familiar with Microsoft Visual Basic, you’ll be right at
home. You can right click on an object and then select its properties. A
property box will popup that you can edit. You can name the object, move it to
an exact spot, change the font, and change other aspects of it depending on what
type of object it is.
After changing the objects properties, I was then ready to start the actual
coding. NS Basic/Palm is object oriented. Each object in the screen layout can
have code associated with it. For example, when you click on a button, the code
for that button is executed. So, I created code for the buttons in my layout.
This was pretty easy. Right clicking on an object will allow you to select the
show code feature. This will popup a window with the code for that object.
My program was pretty simple. I had 2 text boxes that I could enter a number
into. One for Fahrenheit and one for Celsius. Then I could either convert
Fahrenheit to Celsius by pressing one button, or Celsius to Fahrenheit by
pressing another. I also created a button that would clear both values causing
them to be blank.
As you can see above, the code to convert Celsius to Fahrenheit is pretty
short and simple. I even added some error checking in case someone tried to
convert when no value was entered. Programming this way is easy and fun. It’s
great for people that already know Basic or those that want to learn it. NS
Basic/Palm has over 150 available functions which are detailed with short code
snippets in a nice 144 page spiral bound handbook.
NS Basic doesn’t have many debugging features to help you figure out problems
with your programs, but you can download the Palm emulator and have NS Basic
compile and automatically download your app to it. This is safer than loading
the actual program on to your regular PDA. With the emulator, you can run the
program on your desktop PC. It would be nice if there were some tracing,
breakpoint and step thru features though.
The great thing about NS Basic/Palm is that the programs you create look just
any other Palm program. They have their own icon and can be seen in the launcher
like all the other programs. The only special thing you need to make this
happen is the NS Basic Runtime module. This is a 77k .prc file that you need to
install in order to be able to run your programs on the Palm PDA. You also need
to include this .prc with any programs you want to distribute to other people.
The nice thing is that you don’t have to pay royalty fees to the NS Basic people
if you want to sell your programs. Once you create a program, you can distribute
it or sell it and include the NS Basic Runtime module for free.
You can check out my little Temperature Converter test program by downloading the following two
NS Basic isn’t just for simple programs, you can write programs that create,
and edit database files, read and write to the serial port, use math and trig
functions (using the free Mathlib module), and more. You can look at a dozen or
so sample programs included with the package to give you examples on different
types of programs.
I think that the NS Basic/Palm package is a great for people wanting to get
their feet wet with programming applications for their Palm PDA. It’s relatively
easy to learn and comes with a great manual. The NS Basic website also has an
active message forum for people to talk about problems and questions concerning
this development environment. The only thing that would be nice would be a some
kind of demo so that people could try this package before actually buying it.
But, the program does come with a 30 day money back guarantee.
Easy to learn.
No royalty fees.
Apps run seamlessly on your PDA with their own icon.
77k runtime module required.
No demo available.