Skip to Content

What is the Power Basic code?

Power Basic is a programming language and integrated development environment developed by PowerBASIC Inc. It is used to create desktop, enterprise, web, mobile, and IoT applications for Microsoft Windows, Linux, macOS, and Raspberry Pi. Some key features of Power Basic include:

Introduction to Power Basic

Power Basic is an easy-to-learn BASIC language that provides developers with a complete set of tools to build business, consumer, web, and mobile applications. It uses a familiar BASIC syntax that is easy to read and write.

Power Basic has been around since the early 1990s but has seen regular updates over the years to add new features and expand platform support. The latest version, Power Basic 12.0, was released in 2021.

Some of the key features and capabilities provided by Power Basic include:

  • Rapid application development environment for quickly building desktop apps
  • Expandable library of functions for tasks like file I/O, data access, networking, compression, encryption, etc.
  • Dialog editor for easily creating and managing GUIs
  • Compiler generates fast native machine code
  • Support for .NET / ActiveX integration and calling DLL functions
  • Cross-platform support for building Windows, Linux, macOS and Raspberry Pi applications
  • Embedded database engine and SQL support
  • Tools for creating web applications and web services
  • Mobile app development for iOS and Android
  • IoT development for devices like Arduino and Raspberry Pi

Power Basic makes it easy to get up and running quickly and can scale up to build fairly sophisticated applications. It combines an easy learning curve with powerful functionality under the hood.

History of Power Basic

Power Basic was originally created by Bob Zale and launched in 1991 by his company PowerBASIC Inc. It was one of several BASIC languages created for DOS and early Windows development in the 1990s.

Power Basic 1.0 was released in 1991 for DOS. Key features included:

  • Procedural BASIC language
  • Integrated IDE and debugger
  • Compiler for generating fast native code
  • DOS graphics, sound, and memory library

Version 2.0 added Windows support and an object-oriented extension called PowerClasses. Later versions included:

  • Power Basic 3.0 (1995) – 32-bit support, animated windows, COM integration
  • Power Basic 4.0 (1998) – Database handling, DLL creation
  • Power Basic 5.0 (1999) – Linux port, embedded database
  • Power Basic 6.0 (2002) – .NET integration, SQL Server access
  • Power Basic 7.0 (2004) – Unicode support
  • Power Basic 8.0 (2009) – Raspberry Pi support
  • Power Basic 9.0 (2013) – iOS and Android support
  • Power Basic 10.0 (2016) – Dark theme, JSON handling
  • Power Basic 12.0 (2021) – Improved 64-bit support, new debugger

While other BASIC dialects like Visual Basic evolved to focus on GUI application development, Power Basic has retained its roots as a flexible, procedural BASIC useful for a wide range of programming tasks.

Key Features of Power Basic

Some of the key features that make Power Basic a versatile programming language include:

Easy to Learn BASIC Syntax

Power Basic uses a straightforward BASIC syntax that is easy to learn. It avoids some of the convolutions added by other BASIC languages. The basic syntax will be familiar to anyone who has used BASIC.

Rapid Application Development Environment

Power Basic includes an integrated development environment called Power Editor. It provides tools like:

  • Editor with syntax highlighting and auto-completion
  • Debugger for stepping through code and inspecting variables
  • GUI designer for drag-and-drop interface building
  • Project system for managing code files and builds

High-Performance Compiler

Power Basic compiles source code to fast native machine code. The compiler supports various optimizations to boost performance. Compiled programs run quicker than interpreted BASIC.

Cross-Platform Support

Power Basic can compile programs for multiple platforms including Windows, Linux, macOS, and Raspberry Pi. This simplifies cross-platform development.

Small Executable Size

Compared to languages like C++, Power Basic produces relatively small executable files due to its integrated runtime engine. This makes it well-suited for some tasks.

Expansive Function Library

Power Basic includes pre-built functions for everything from string manipulation to disk I/O to network communications. This large library speeds up development.

.NET and ActiveX Support

Power Basic programs can integrate with .NET and ActiveX to leverage code written in other languages. There is COM/DLL support for calling Windows API functions.

Database Access and SQL Support

For data-driven business applications, Power Basic provides database connectivity tools as well as embedded database and SQL capabilities.

Object-Oriented Programming

While mainly a procedural language, Power Basic also includes object-oriented features for code organization. Variables and functions can be scoped into objects and instantiated as needed.

Uses of Power Basic

Some of the main uses of Power Basic include:

Desktop Application Development

Power Basic excels at creating desktop software for Windows and other platforms. Its Windows API bindings combined with the GUI designer make it easy to build user interfaces. The fast compiler produces responsive desktop apps.

Web Application Development

Power Basic provides components for building server-side web applications. It can connect to databases and integrate with web technologies like CGI, Active Server Pages (ASP), and HTTP APIs.

Web Services

Power Basic can create REST and SOAP web services that receive and respond to HTTP requests. This allows integrating with web and mobile applications. JSON support is also provided.

Business Applications

For business software that relies on data inputs/outputs, file handling, and calculations, Power Basic is a good fit. It can rapidly deliver the needed functionality with fewer lines of code than lower-level languages.

Automation Scripts

Power Basic is commonly used to create utility scripts for automating tasks. Its ability to control external applications via DLLs and APIs is useful here.

IoT/Embedded Applications

With Raspberry Pi support, Power Basic can program embedded devices. Access to low-level hardware combined with BASIC’s ease of use helps rapid IoT development.

Education

Power Basic is occasionally used to teach programming fundamentals in academic environments due to BASIC’s reputation as a beginner-friendly language.

Rapid Prototyping

Because Power Basic allows creating functional applications quickly, it is good for prototyping software ideas and designs before investing in a full implementation.

Power Basic Coding Fundamentals

Here are some of the key elements of the Power Basic syntax and language structure:

Variables

Variables store values and are declared using Dim statement:

Dim myVar As Integer

Data Types

Common data types include Integer, Long, Single, Double, String

Dim quantity As Integer
Dim price As Single 
Dim name As String

Operators

Arithmetic (+, -, *, / ), comparison (=, , ) and logical operators (And, Or, Not) are used

If quantity > 10 And price 

Functions

Reusable blocks of code that perform specific tasks:

Function CalculateTotal(qty As Integer, amt As Single) As Single
  CalculateTotal = qty * amt
End Function

Subroutines

Procedures that execute a block of code but don't return a value:

Sub DisplayWelcomeMsg()
  MsgBox "Welcome!"
End Sub

Looping

For/Next loops repeat code like:

For i = 1 To 10
  Print i
Next i

Branching

If/Then/Else statements execute conditionally:

If i = 5 Then
  Print "Halfway there"
Else
  Print i
End If

Comments

Rem statements add non-executing comments:

Rem This is a comment

These basic constructs allow creating robust programs in Power Basic.

Power Basic Integrated Development Environment

Power Basic comes with an integrated development environment (IDE) called Power Editor that provides a central interface for creating, editing, debugging, and compiling PB programs.

Key Features

  • Editor with syntax highlighting for code
  • Project system for managing program files
  • Debugger for stepping through code
  • Toolbar and menus for quick access to functions
  • Messages window displaying output, warnings, errors
  • Context-sensitive help documentation
  • GUI designer for visually building windows and controls

Developing Programs

A typical workflow in Power Editor would include:

  1. Create a new project or open an existing one
  2. Add new code files (.pb extension) to the project
  3. Edit code files, with syntax highlighting and auto-complete
  4. Use GUI designer to design program interface
  5. Set breakpoints and watch variables to debug code
  6. Compile program to generate executable

Power Editor simplifies and streamlines the entire programming process for Power Basic developers.

Power Basic Console Compiler

In addition to the IDE, Power Basic includes a console application called PBCC (Power Basic Console Compiler). PBCC provides a way to compile .pb source code files directly from a Windows command prompt.

Key features of PBCC include:

  • Allows batch builds and automation
  • Can output executables, DLLs, or ActiveX components
  • Supports multi-threaded compilation
  • Handles conditional compilation directives
  • Additional command-line options available

A typical PBCC command would look like:

pbcc source.pb /exe

This compiles source.pb to an executable application. The standalone compiler gives flexibility compared to the IDE.

Power Basic Runtime Pack

Power Basic programs require the Power Basic runtime pack in order to execute. This package contains libraries and resources needed by the Power Basic engine.

For distribution, developers have a few options regarding the runtime pack:

  • Distribute PBVM.DLL with application installers
  • Link PBVM.DLL directly into executable
  • Compile to standalone EXE with integrated runtime

The runtime pack is available in different versions to match the development environment used. The runtime is proprietary technology but Power Basic Inc. provides licensing options for distributing the runtime royalty-free with applications.

Power Basic Sample Code

Here are some examples of Power Basic code to illustrate what it looks like:

Hello World

Print "Hello World!"

Input / Output

Input "Enter your name: ", name$
Print "Hello "; name$

Math Operations

a# = 4.5
b# = 6.7
sum# = a# + b#
Print Str(sum#)

Looping

For i = 1 To 10
  Print i
Next i

Subroutine

Sub ShowMessage(msg$)
  MsgBox msg$
End Sub

ShowMessage("Hello!")

GUI Window

Window 1
  Control Button, 1, "OK", 50, 100, 60, 20
  Control Text, 2, "Enter your name", 10, 20, 130, 20

  Text(1) = name$

End Window

This provides a quick look at how Power Basic handles common programming tasks.

Conclusion

In summary, Power Basic is a versatile BASIC language that makes it easy to develop desktop, server, web, and mobile applications on various platforms. Its combination of a familiar BASIC syntax and a rich development environment with thousands of library functions allows building robust business and consumer software quickly.

While not as widely used as in its heyday in the 1990s, Power Basic still maintains an active user base today thanks to its active development and cross-platform capabilities. It excels at tasks like building Windows desktop apps and automation scripts. For programmers that enjoy the simplicity of BASIC, Power Basic remains a productive option.