Skip to content

Releases: parallaxinc/PropellerIDE

Patch: remove debug dependency, loosen RPi timing requirements

23 Apr 21:29
Compare
Choose a tag to compare

Version 0.30.0 - projectview, propman, packthing, propterm, memorymap

22 Apr 07:34
Compare
Choose a tag to compare

New Features

This release incorporates complete rewrites of several major subsystems, with a focus on preparing PropellerIDE to support arbitrary programming languages, and provide a smoother experience both working with external hardware, for both the developer and the end-user.

Important notes

  • PropellerIDE is still under heavy development and some features are not fully implemented.
  • p1load has been replaced with propman, so if you have a previous installation, you will have to change the loader path to propman.

projectview

The most visible addition to this release is the brand new project view widget. Completely rewritten from scratch, it implements a rules-based regex parser that completely decouples the widget from the language it displays, so no more custom parsers for every new language. This is a major step in increasing coverage of the Language definition format, the structural change that will allow PropBASIC to be supported as just another IDE language.

You’ll notice that projectview has a search feature! Ctrl+L or Ctrl+K to hop over to it immediately, then type away! You’ll be able to see at a glance everything in your entire project of interest. Press escape to return to the editor.

propman

This release is the first to feature Propeller Manager, a in-development framework for managing attached devices. Right now, it is only a drop-in command-line replacement for p1load, but eventually Propeller Manager will be completely embedded into the IDE and manage all hardware aspects of the environment, including persistent terminal sessions and device discovery.

packthing

This release is the first to be built using packthing, a new build integration tool for Qt projects which facilitates release automation from multiple sources. PropellerIDE no longer has a custom build system. This will ultimately allow PropellerIDE to be embedded into the LameStation SDK.

more features

  • new memory map widget (F8)
  • new serial terminal (F12)
  • new finder widget (Ctrl+F)
  • new build status widget (build the project!)
  • new quick reference links (Help)
  • editor styling and aesthetic improvements

Known Issues

  • projectview doesn't refresh when the library path changes.
  • projectview rebuilds the entire project model when interacted with, which results in your place in the tree being lost when it is clicked
  • propterm can sometimes messes up the FTDI chip and it takes a few tries before it'll be responsive again
  • propterm doesn't use the right font on Mac
  • propterm devices don't update; an instance of propterm must be closed and reopened to updated the attached device list

propterm will be absorbed into PropellerManager in the next release, and will then no longer suffer the issues listed here.

  • custom fonts are currently broken; your font will revert to the theme font when restarting the IDE

Version 0.25.1 - Loader Path Fix

29 Jan 19:28
Compare
Choose a tag to compare

Changes

  • Fix bug in loader path separators.

Version 0.25.0 - Add themes

20 Jan 09:18
Compare
Choose a tag to compare

Changes

  • Add support for font and color schemes
  • Classic theme provides legacy Spin support
  • Theme colors paint in real-time as they're selected to allow instant preview
  • Add FileManager class to abstract editor widgets from main window
  • Add dynamic menu controls
  • Verify UTF-8 support and use UTF-8 for all files
  • Add shortcuts for tab open, tab close, next and previous tabs
  • Add close all and save all functions
  • Add fixes for various highlighting bugs
  • Continued refactoring and cleanup of application as a whole
  • Help documents launch on all platforms
  • Editor widgets are properly cleaned up and disconnected when tabs closed
  • Raspberry Pi builds are now available
  • Removed Welcome.spin dialog
  • Add new command-line interface
  • Drop support for Qt4

Known Bugs

  • The browser widgets do not always display accurate project information and fail to clean up when all files are closed.
  • The serial terminal has known stability problems and occasionally crashes the IDE if used.
  • Incorrect path separators are passed from PropellerIDE to the loader application on Windows resulting in an inability to load software.

Overview

This release represents a substantial overhaul in how PropellerIDE manages files internally, and the resulting theme system is the first major feature addition under LameStation stewardship.

Several components are slated for major rework in upcoming releases and so their issues have not been addressed as yet. These are listed under [Known Bugs](#Known Bugs).

Themes

The Highlighting tab has been replaced with the Appearance tab, which allows loading theme presets and manually setting editor colors.

image

There are a collection of themes to choose from, some of which provide custom fonts. Here are some examples:

Dusk Ocean theme

image

IIe theme

image

There is now a Classic theme which incorporates the Parallax font for legacy Spin support, but the editor will use characters from system fonts when using unsupported Unicode characters.

Spin schematics, Chinese, and Arabic all in the same editor

image

GUI Interface

PropellerIDE includes a number of new menu options and shortcut keys. The key combinations are platform specific but referring to them by their common Windows shortcut.

  • Undo (Ctrl+Z)
  • Redo (Ctrl+Shift+Z)
  • Cut (Ctrl+X)
  • Copy (Ctrl+C)
  • Paste (Ctrl+V)
  • Select All (Ctrl+A)

Also supported are common tab operations as found in web browsers.

  • New Tab (Ctrl+T)
  • Close Tab (Ctrl+W)
  • Next Tab (Ctrl+PgDown)
  • Previous Tab (Ctrl+PgUp)

The following commands are available in the menu without keyboard shortcuts.

  • Save All
  • Close All

Links to the Propeller datasheet and manual PDFs can be found in the Help menu.

image

Command-line Interface

PropellerIDE now uses QCommandLineParser for its console interface, which will make it considerably easier to extend in the future.

$ propelleride -h
Usage: propelleride [options] OBJECTS...

PropellerIDE is an easy-to-use, cross-platform development tool for the
Parallax Propeller microcontroller.

Write code, download programs to your Propeller board, and
debug your applications with the built-in serial terminal.

Options:
  -h, --help     Displays this help.
  -v, --version  Displays version information.

Arguments:
  Source files   Source files to open.

This feature and the planned addition of QSerialPort move the minimum Qt version required to build PropellerIDE to Qt 5.2.

Version 0.21.0

17 Dec 04:26
Compare
Choose a tag to compare
  • Added git-based versioning scheme
  • Bundled Qt in debian package to simplify installation (sorry, Debian!)
  • Travis CI builds against Qt4 and Qt5, and runs cppcheck, and uploads debian release automatically.
  • Improved block indentation
  • Added Cut/Copy/Paste controls
  • Manual links now work on Mac, Windows, and Linux.