J.F.Drew © 2000-2017

Projects by John F Drew Site map

Mobile menus

VK5DJ

Proton Development Suite - a BASIC compiler review

The Proton Development Suite consists of four components to produce HEX files for PIC® microcontrollers from BASIC source code.

(1) Proton IDE for the creation of the source code and management of the compile process,

(2) a compiler that converts the source to an Assembler file (.ASM)

(3) a copy of Microchip’s MPLAB for conversion from Assembler to Hex for the PIC® programming software, and

(4) a demonstration copy of Proteus ISIS simulation software with sample boards to test software function.


Proton BASIC is a compiler that produces very fast, compact code.  The author is Les Johnson who takes great pride in the product and responds promptly to user requests. BASIC is not normally known for producing fast code, mostly because many implementations use an interpreted approach which is, of its nature, slow to run. However Proton Compiled code is highly optimised assembler code - developer Les has a deep understanding of the PIC® hardware and how to get the best out of it. There no point in learning C when BASIC is so much friendlier and at least as capable.


The compiler currently supports 12F, 16F, 18F, 24F and some 33F devices.

Currently there are 92 devices on the free list and some hundreds are activated when the compiler is purchased. The current price is UK39.99 pound direct from the developer. See below for details.

All of the PIC® microcontroller programs on the VK5DJ.com site have been written in Proton BASIC.

The essential structure of a program is this:


Declares

'

'

Includes

'

'

Constants and Variables

'

GoTo Main ' Jump over the subroutines (if any)

'

‘Subroutines go here

'

‘Procedures can be placed anywhere

'

Main:

Main Program code goes here


Here is a simple program from the manual:


Device = 18F25K20

'-----------------------------------------

Declare Xtal = 64

Declare Hserial_Baud = 9600

'-----------------------------------------

' Load an ADC include file (if required)

Include "ADC.inc"

'-----------------------------------------

' Define Variables

Dim WordVar as Word ' Create a Word size variable

'-----------------------------------------

' Define Constants and/or aliases

Symbol Value = 10 ' Create a constant

'-----------------------------------------

GoTo Main ' Jump over the subroutine/s (if any)

'-----------------------------------------

' Simple Subroutine

AddIt:

WordVar = WordVar + Value ' Add the constant to the variable

Return ' Return from the subroutine

'-----------------------------------------

' Main Program Code

Main:

WordVar = 10 ' Pre-load the variable

GoSub AddIt ' Call the subroutine

HrsoutLn Dec WordVar ' Display the result on the serial terminal


The compiler supports Procedures and local variables yet is very memory frugal. Test compilations with other products demonstrate the extent to which optimisation has been achieved in Proton.


There is a new active forum here: http://www.protoncompilers.com A free copy of the compiler may be downloaded from here. The latest paid upgrade is available from the same site via eBay. Current price (10 Jan 21) is 39.99 English pounds. A dongle is required for earlier versions but the latest versions use a software key.


Forum users are very helpful and posters are respectful of each other. Beginners are treated with understanding and are always given a helping hand.


The forum is a new development following the closure of the original site

I have no financial connection with Les apart from great admiration for a quality software package at a reasonable price.