Spin Tools IDE
Sometimes ago I proposed a new enhanced IDE for spin programs. Despite the low interest, I continued to develop the tool for my own needs, it is still a bit rough on some aspects but I believe it is now ready for an official presentation.
Here is the new Spin Tools IDE:
The interface shows the file browser, the code editor with syntax highlight and the code outline view.
The code is compiled in realtime while it is typed and errors are shown immediately, without the need to push a compile button. The code can be easily navigated by ctrl-clicking on a method to move to its definition.
Hovering on a method name shows the description if available:
Code assist shows the linked object methods and descriptions:
The outline view shows the sections and public labels, PUB/PRI methods are shown with the parameters and return values. Comments on the section keyword line are also displayed for easy navigation.
Compared to Propeller Tools there are some differences:
- Local variables can have the same name as global variables, there is a warning highlight when a local variable hides a global variable so you know what happens.
- All constants are calculated as 64 bit integers and masked as 32 bit when the result is used.
- Integer and floating point values can be used on the same expression.
- The F8 information window also shows the bytecode listing.
- Debug statements are not yet supported.
The binary packages for Linux, Windows and MacOS can be downloaded from here (requires the Java SE 17 or later runtime already installed).
The source code is not yet published on GitHub.
Beware that this is a work in progress, while I do my best to make the compiler working, I'm certain that there are still some bugs so if something appears to not work as expected, try with Propeller Tools or PNut. All libraries and examples included in the package are tested to produce byte-exact binaries with Propeller Tools, with some exceptions due to floating point approximations or expression operations sequence that doesn't alter the results.
As usual, use at your own risk!
Hope you enjoy!