NS Basic/Symbian OS 1.2 Release Notes

June 25, 2009

© NS BASIC Corporation. All rights reserved.


Contents

  1. Demonstration Edition
  2. How to Install NS Basic/Symbian OS
  3. What's New in this release?
    Version 1.1.0
    Version 1.2.0
    Version 1.2.1
  4. Known Issues
  5. Documentation
  6. Support

Welcome to NSBasic/Symbian OS 1.2!

NS Basic/Symbian OS 1.2 and NS Basic/Symbian OS 1.2 Pro offer rapid, easy programming for Symbian OS devices. If you have used Visual Basic, you'll be able to come up to speed quickly. If not, you will still find NS Basic to be easiest way to program Symbian OS devices.

Version 1.2 adds a number of new features. In addtion to Tcp/IP, support has been added for BlueTooth and IrDA.

NS Basic/Symbian OS is a complete development environment. It creates programs for all Symbian OS devices running Symbian OS S60 3rd and 5th Edition and UIQ 3. NS Basic/Symbian OS runs on Windows 2000, XP and Vista. Using Parallels or VMWare, it will run on Mac OS. It will run on Linux using Win4Lin and VMWare.

NS Basic/Symbian OS will compile programs written using NS Basic/Palm with little or no change.

NS Basic/Symbian OS is a commercial software product, licensed subject to the License Agreement that must be must be agreed to before installation.

This document contains what you need to know to install and run NS Basic/Symbian OS.

Please visit our web site for the latest version of this document. You'll see the latest installation notes and updated news.

NS Basic/Symbian OS Features

The easiest way to program Symbian OS devices!

1. Demonstration Edition

If you are running the Demonstration Edition, Welcome! This is a full version of NS Basic/Symbian OS, with some restrictions: Apps developed using the demo will work without change on the full version.

2. How to do a new installation of NS Basic/Symbian OS

If you are installing from the release CD, you can install NS Basic/Symbian OS directly from this document if you are using a compatible browser*. Click on NSBasic_SymbianOS.exe and select the option "Run this program from its current location".

Otherwise, navigate to the CD and run the installer directly from there. If you have an earlier version installed, the installer will automatically uninstall the old version.

  1. This will install all the necessary files onto your desktop, and put NS Basic/Symbian OS on your Start menu.
    You may see the message "The publisher cannot be determined due to the problem below: Authenticode signature not found." It is safe to ignore this message.

  2. Once the installation is complete, start NS Basic/Symbian OS. If you have the full version, enter your serial number into Register under the Help menu. Otherwise, the programs you create will time out after 5 days.

  3. Register your copy so we can keep you up to date. (If you bought directly from us, you are automatically registered).

* If you are using a browser such as FireFox, this may not work.

If you have problems with the installation, see Tech Note 01.

Getting Started

From the Start... Programs... menu, select NS Basic/Symbian OS OS, then NS Basic Symbian IDE. It will bring up a dialog box. Select "Other Existing Projects" and pick one of the Samples. You will then be able to browse the project and compile to run on your Symbian device. You should also try the Tutorials: they are in the Help menu.

Using NS Basic/Symbian OS with Windows Japanese, Chinese, Hebrew, Greek, etc.

NS Basic/Symbian OS can work with double byte character sets. If there is a string table for your language, the settings will be automatic. Here is how to set up NS Basic/Symbian OS:

3. What's New in this Release

The following enhancements and bug fixes are in this release.

What's new in 1.2.1

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. Pop up trigger and checkbox colors fixed.
  2. Memory leak fixed.
  3. Start adding support for Nokia Ovi Store.
  4. Popup keyboard on 5800 fixed.

What's new in 1.2.0

  1. BlueTooth RFCOMM communications support added.
  2. IrDA communications support added.
  3. Serial Communications support added.
  4. New communications functions: (See docs below)
  5. Support for the latest Nokia 5800 ROM firmware added.
  6. Support for the Nokia N96 added.
  7. UIQ: Input text box now better supported.
  8. S60: Cosmetic improvements in landscape mode.
  9. IDE: Updated to use Windows XP theme - more modern look.
  10. New sample: Bluetooth RFCOMM
  11. New sample: SerTester
  12. New Tech Note 16: Communications
  13. Language Reference updated
  14. Other minor fixes and improvements.

Documentation Notes for 1.1.0

  1. Communications: New functions have been added for serial, IR and Bluetooth communication. Complete documentation is in the Language Reference, under the Help menu.

    The new functions are: SerialOpen, S erialClose, SerialSet, SerialSend, SerialRecieve and SerialReceiveWithEvents.

  2. Chain and AppLaunch: These statements will only launch programs created using NS Basic/Symbian OS. The .prc files which are in the \NSBasic_Symbian\Downloads files should be included as resources in your main application, so they are installed with your app.

What's new in 1.1.0

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. Support added for S60 5th Edition
  2. Support added for S60 TouchScreen devices (Nokia 5800)
  3. Support for Screen Rotation on S60 devices added.
  4. Improved display at runtime
  5. Buttons are now slightly rounded to match 5th Edition buttons
  6. IDE: Bitmaps are now displayed on the design screen.
  7. IDE: Gradient buttons and labels can now be created. (See docs below)
  8. IDE: Other fonts can now be used on buttons and labels.
  9. IDE: Images on Bitmaps can now be sized to fit. (See docs below)
  10. IDE: Unnecessary bitmap depths removed from Bitmap Resource.
  11. IDE: Fixed 'File Not Found' when saving project to another folder
  12. IDE: Open Image now defaults to Bitmap directory
  13. IDE: If Bitmap ID is changed, project is marked as dirty.
  14. IDE: Error 381 when changing Themes fixed.
  15. IDE: NS Basic/Palm 7 projects can be opened by NS Basic/Symbian.
  16. IDE: Themes now work for unicode systems (DBCS)
  17. IDE: Ctrl-P shortcut to print added.
  18. Libraries: NSFileLib added.
  19. Samples: FileLibDemo added.
  20. Samples: FileLibTest added.
  21. Samples: BetterBitmap added.
  22. Samples: GradientButtons added.
  23. Samples: Derby sample updated.
  24. Samples: Names improved for Shared Samples.
  25. Samples: Added missing "Doc Reader Guide.pdb"
  26. Tech Note 23 added: Using FileLib.
  27. Tech Note 12: Link to sample of Symbian Native Library added.
  28. Runtime: If theme is missing, execution continues without an error.
  29. Runtime: SetTheme() function added.
  30. Runtime: Entire region of a bitmap is now clickable.
  31. Runtime: Topmost object gets the click, instead of bottom most.
  32. Runtime: Defaults to 16 bit mode
  33. Help: Language Reference updated.
  34. Tutorial 09 added: Bitmaps, Gradient Buttons and Pictures.
  35. Problem with registry entry fixed (1.1.0a)
  36. BetterBitmaps sample fixed (1.1.0b)
  37. Problem with installer allowing just one app fixed. (1.1.0b)
  38. Run Menu: "Run Immediately" now works. (1.1.0c)
  39. Removed "Application not compatible..." warning on Nokia 5800 install
  40. Touchscreen works on Nokia 5800 (1.1.0c)
  41. Italiano added to IDE languges (1.1.0c)
  42. Default icon now appears on Nokia 5800 (1.1.0c)
  43. Default icon appearance tweaked, fixed on E61 (1.1.0d)

Documentation Notes for 1.1.0

  1. Gradient Buttons and Labels: Now you can create objects that have a background that gradually goes from one color at the top to another at the bottom. The Bitmap object has been enhanced with several new properties that can be set at design time. The image of what it will look like is displayed in the Design Screen. At compile time, the image is transferred into a bitmap resource in the project, and saved as a file in \NSBasic_Symbian\bitmaps\.

    The new properties are:
    Gradient Color1: The top (or left) color.
    Gradient Color2: The bottom (or right) color
    Gradient Style: 1 for top to bottom, 0 for left to right.

    You can use a bitmap instead of a label of the same size. Since Bitmap objects can have a script (just like a Button object), BitMap object buttons work the same way as Button Object buttons - but there are more options on appearance.

  2. Using other fonts: Bitmaps can now have text on them, using any font that is on your desktop system. The new properties are:
    Caption: The text to appear
    Alignment: 0 for left, 1 for right, 2 for centered.
    Appearance: 0 for flat, 1 for 3D
    Border Style: 0 for none, 1 for 1 border around the image.
    Caption Color: The color of the text.
    Font Name: The name of the font. Can use any font installed on your system.
    FontSize: The size of the letters.
    FontBold: Are the characters in boldface?
    FontItalic: Are the characters italicized?
    FontStrikeThru: Is there a line through the characters?
    FontUnderline: Is there a line under the characters?
  3. Sizing images on Bitmaps: You can now specify the image to appear on a bitmap as well as its size. The new properties are:
    Picture: The pathname to the image. It can be bmp, gif, jpg and other format.
    Stretch: If False, the image will be the size of the orginal image, aligned at the top left. If the image if larger than the bitmap object, it will be clipped. If Stretch is True, the image will be scaled to fit the current size of the bitmap object.

    Keep in mind that the maximum size of a bitmap is 65,512 bytes. The formula for calculating the size of a bitmap is (width * height) * 8.

    Projects with existing bitmap objects will continue to work as before.

  4. FileLib: This new library allows flat files, such as .txt files, to be created, read and written. Since it lets you read and write directly to any position in the file, it can be used to access any file you know the format of. Files can be in main memory or on a card. The library also allows you to see the contents of the public directories of your device. There is a new Tech Note, library and two samples. (This library replaces VFSLib. The calls are the same, but there are additional capabilities.)
  5. SetTheme(themeName) function: This new function lets you change the Theme at any time in your program. The Theme file has to be included in the Resources of the project. themeName is the name of the file, without an extension.

What's new in 1.0.3

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. IDE: Theme Editor added.
  2. IDE: Design screen shows colors in current theme
  3. IDE: Launch Icons and License now stored as relative paths
  4. Runtime: Theme support added.
  5. Library: Dictionary library added. (See Notes)
  6. Samples: Dictionary sample added.
  7. TechNote 42 added: Using NSDictLib.

Documentation Notes for 1.0.3

  1. Themes: This new feature allows you to enhance the appearance of your application by adding color to it. In Project Properties, you define a Theme. A theme defines colors for 22 different features of a form. There are 30 themes included with the release.

    To edit a theme or to create a new one, start the IDE and open a project. Select the Theme Editor under the Tools menu. It will automatically open the theme for the current form for editing, but allows you to also modify other themes or create new ones.

    Projects are automatically given the "Symbian" theme. Projects that are imported from NS Basic/Palm can be given the "Classic" theme if you want to retain the original look. There is no restriction on changing the theme of an existing program.

    The theme you specify in Project Properties will be automatically be added as a resource to your project. If you use additional themes, you have to add them as resources. Themes are kept in c:\NSBasic_Symbian\Themes. You can put additional themes you create in that folder or elsewhere.

    Note on the "Symbian" Theme: This theme is intended to be a good standard theme. We haven't come up with a final version of this. Feel free to contribute an improved version!

  2. Dictionary Object: The new object lets you set up a list of values you can quickly lookup and change during runtime. See Tech Note 42 and the new NSDictLib sample.

What's new in 1.0.2

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. Compile: Version number now updates properly
  2. Compile: Spaces in the directory path are no longer a problem.
  3. Compile: Now works properly on non-English Vista systems.
  4. IDE: New forms default to no titlebar on top.
  5. IDE: Bitmaps default to 8 Bit Hi Res (see below)
  6. Runtime: StyleTap updated to .9.013
  7. Runtime: Screen and font rendering much better at 240x240
  8. Runtime: TitleBar and MsgBox appearance improved.
  9. Runtime: Cursor appearance improved.
  10. Runtime: Cursor no longer beeps when moved on some devices.
  11. Help: ReadMe is now in the Help menu.
  12. Help: Language Reference updated.
  13. Help: Several Tech Notes updated.
  14. Samples: Name of Stock Quote app changed.

Documentation Notes for 1.0.2

  1. Bitmaps: When you add a bitmap to a project, it defaults to 8 bit, hi resolution. This will work well for devices which have an area of 240x240 or larger. If your device is smaller, you should put the bitmap into 8 bit, normal resolution, using the Project Exporer to get to the properties of your bitmap.

    The maximum size of a bitmap is 64k. If you specify more than one image in a bitmap, the total of all the images cannot exceed 64k. Note that the size used of the image is as a bitmap, which can be quite a bit larger than your original image if it is a gif or jpg.

    If you need to display an image larger than 64k, you need to tile it into smaller images that are within the limit and display them as separate bitmaps.

What's new in 1.0.1

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. Samples: Stock Quote added.
  2. Runtime: Grid.TextMatrix fixed.
  3. Runtime: Localization preferences (dates, etc.) should work now.
  4. Runtime: StyleTap updated to 0.9.012
  5. Samples: Controls no longer hangs
  6. Installer: Files are now installed into c:\NSBasic_Symbian
  7. Installer: Option added to start IDE or HelloWorld on completion
  8. Installer: step added to register controls
  9. Compiler: Output files renamed for more clarity
  10. Compiler: Error 70 fixed.
  11. Compiler: S60 and UIQ installers can both be made in one run.

Documentation Notes for 1.0.1

The default Files Directory, which is used to store projects, installers, samples and libraries has been changed from c:\NSBasic to c:\NSBasic_Symbian. This will avoid the confusion with NS Basic/Palm projects, which used the same directory. If you are using the default folder, you will need to move your projects from \NSBasic\Projects to \NSBasic_Symbian\Projects.

Important Notes

  1. Projects: Your project is saved in a .prj file. When you compile, the following files are created in the c:\NSBasic_Symbian\Download folder.

    • The _S60_selfsigned.sisx file is a self signed installer for S60 devices. Click on it and the Nokia Application Installer should transfer it to your device.
    • The _UIQ_selfsigned.sis file is a self signed installer for UIQ devices. Click on it and the UIQ Application Installer should transfer it to your device.
    • The _S60_unsigned.sis file is an unsigned installer for S60 devices that only appears in the Pro version. See Tech Note 11 for more information on signing.
    • The _UIQ_unsigned.sis file is an unsigned installer for UIQ devices that only appears in the Pro version. See Tech Note 11 for more information on signing.
    • Compile.log file contains all the messages from the compilation: send this to NS Basic with the Error.log file if the .sisx or .sis file is not created.
    • Error.log , if it exists, will have messages from building the installer.
    • The .prc file is the actual executable.
  2. Make sure you are building for the correct type of device. In the Tools menu, select Options, then Compile/Download. In that screen, select either S60, UIQ or both.

  3. Signing: Symbian requires all apps be signed, a process specifying which apps will run on what devices, and what rights they have to do certain operations. By default, NS Basic/Symbian OS creates Self Signed apps. As these are not Trusted Apps, a setting has to be changed on some devices before they will install. See Tech Note 11 for more information on Signing.

    To create app with a higher level of signing than Self Signed, NS Basic/Symbian OS Pro is required.

  4. (S60 Devices) To allow Self Signed apps to run, go to the Symbian Tools (or Installatons) menu on the device and look for the App Manager. Start it. Select 'Options', then 'Settings'. Change the "Software Installation" setting from "Signed Only" to "All".

  5. (S60 Devices) To see what apps are running on your device, hit the app key on the device while your program is running. It goes back to the app menu. Your program continues running. Hold the app key down to get the task switcher to get it back. To resume running an app, hilite it and push the select key. To kill an app on a device with a QWERTY keyboard, hit the delete key.

  6. Icons: See Tech Note 9 for complete details on creating icons for your app.

  7. Terminating your App: On Symbian OS, when a new app starts, yours goes into the background (See above, "What apps are running?".) To actually stop your app, you need to actually execute an NS Basic STOP statement. It's in the Language Reference. (For those coming from the Palm OS environment, this is quite different from what you are used to.)

  8. Installing Additional Files: You can include additional files in your installer by adding them to the Resource area of the Project Explorer. They will be installed in the same folder as your app. The same is true for Libraries.

  9. Install Location: By default, apps are installed in the "Installat." folder on S60 devices, and into Tools on UIQ devices. You can change this in Project Properties.

    Apps can be installed to the device or to a card. If they are installed to the device, they will launch more quickly, as the memory is faster.

  10. Data Files: Data files you create using the db* statements are created in your app's private directory on the device. If your app is deleted, the files are also deleted. If a newer version of your app is installed, the files are retained (make sure your installer does not overwrite them!) The security of the Symbian OS on its private folders is pretty good: you cannot read or write to these files from another app, which can make it difficult to copy files off the device. However, you can use the VFSLib to read and write files to a storage card, where they will be publicly accessable.

  11. Make sure your firmware is up to date. We've seen some older devices with the original firmware on them that have problems. Updating the firmware seems to solve this. Check with your manufacturer.

  12. Unsupported Features: There are some features that are not yet completely in NS Basic/Symbian. Major ones are 5-Way support and Serial Communications. We plan to add these in a future release. (Not all Symbian devices have 5 way buttons.)

  13. Handbook: The Handbook documents 5-Way support in Section 15. Please ignore this section until we release support for this.


4. Known Issues

See
Tech Note 01 for solutions to common problems.
  1. The Scroller.Current methods hangs programs. Do not use these features until we have a fix.

  2. Vista has some screen display issues in the IDE.


5. Documentation

  1. The NS Basic/Symbian OS Handbook. It is shipped with each copy of NS Basic/Symbian OS. It is approximately 150 pages and details all commands, functions and statement, with examples for each of them.

  2. The Language Reference under the Help menu contains a summary of all statements, functions, objects and constants.

  3. The Tech Notes contain detailed information on a number of topics, including add ons to NS Basic. On the NS Basic/Symbian OS Help Menu.

  4. Tutorials: A variety of different tutorials to help get you started. On the NS Basic/Symbian OS Help Menu.

  5. Sample Code: There are a number of samples installed with NS Basic/Symbian OS. We have set up a Files section on the NS Basic Web Board, where users can add additional samples.


6. Support

We're committed to delivering the best possible support. The following resources are available:
  1. See the list of Common Problems.

  2. The NS Basic/Symbian OS Web Board. Post questions and comments, and get answers in a public forum, plus more samples to download. Essential!

  3. Email Support: Send your questions to support@nsbasic.com

  4. Tech Notes: The Tech Notes posted on our web site give additional and specialized information on a wide variety of topics.

  5. Updaters: From time to time, we may offer updates to NS Basic/Symbian OS modules for download at no charge. Register your copy to make sure you are on the list.

We do not offer support by phone. Many problems involve looking at code and many solutions involve complex web addresses that don't communicate well by voice. Try the email support - it works better and we almost always respond quickly!

© NS BASIC Corporation. All rights reserved.