MacAxePad needs to be updated for 64 bit for future compatibility

pleiser

Senior Member
#1
For the last couple versions, MacOS has started to warn users when opening apps that haven't been updated with 64 bit support, among them MacAxePad. AxePad is generally in desperate need of updates to match at least the essential features of PE6 (although the preprocessor I made helps supplement those features available natively, it's still not as seamless as in PE6). It will be very disruptive to many users if it becomes completely nonfunctional in a future version of macOS (and most people can't justify holding back updates solely for AxePad). When will this be fixed? Is there some cross-platform replacement or major update for AxePad in the works, or is PICAXE doomed to become a Windows only system, leaving many schools, companies behind, and forcing them to buy a windows license and install a VM just to continue using PICAXE?

Thanks,
Patrick
 

techElder

Well-known member
#2
Patrick, more than 5 years ago, I sort of gave up on programming on my iMac. Apple clearly has been moving away from the big-screen Macs, and I don't see them changing this. Actually, it is much cheaper to put an HDMI connected large monitor on an iPad.

I just have my Mac for most purposes and my PC for programming with either of them available with a twist of my chair.
 

tmfkam

Senior Member
#3
I still use my iMac for programming. For home, and another iMac for programming at work. Cross platform usage was one of the first things that led me to PicAxe. I would be sorry to see it lost. I'd like to imagine that a fairly simple recompile with a 64bit compiler would see AxePad 64bit ready.

I really hope that does happen.I'm already flirting with alternatives, and not being able to use the compiler would see me reluctantly leave PicAxe.
 

edmunds

Senior Member
#4
My 5c for a decent mac version, too. Mac is growing, PC is shrinking. Mac has some of the best embedded development tools around (for ARM, for an example, Arduino IDE seems to be fine). Why not picaxe? It is not that difficult to maintain cross-platform code. You just have to be a bit careful about the tools you choose. And the right choices are the right choices for many other reasons, not only cross-platform code.

In the meanwhile, I'm also using a special PC for Picaxe programming since PE6. Mac is occasional for code ideas and some simpler field stuff that gets done on the fly, as PC is normally not around.

Edmunds
 

wapo54001

Senior Member
#5
This issue has been on my mind for some years because I like programming Picaxe chips but I want to leave my PC behind and it seems I won't be able to do that as long as I want to write programs with PE6, and I am not about to give that up!

In my country, Chromebook has been increasingly outselling Mac OS for at least three years. During that same period Chromebooks have become much more flexible -- they now run Android apps -- and also it has become very easy to make Chromebooks into dual-boot devices that will run many Linux distros. While Chromebooks have started out mostly used by K-12 school kids, not so much any more.

Apple grew it's market share long-term by emphasizing K-12 sales, now Google is doing the same. Chrome OS - Android integration will surely get even better over time and out-of-the-box dual boot to Linux capability is a reasonable expectation. Two years ago I gave my spouse a really nice all-aluminium, gold-toned Intel-powered 14" Chromebook as thin and elegant as a high-end PC laptop, but with a 12-hour battery, and the price was $300 instead of a PC's $1000-$2000 pricetag. After updates along the way, this machine now runs Android apps and is easily modified to dual boot between Chrome OS and Linux. It does absolutely everything I need except it doesn't run PE6.

So, it appears that popular computing solutions -- where I live anyway -- are moving away from PCs towards platforms that presently are not supported by Rev-Ed. (My measure of "supported" would be a proper porting of PE6.) But given the time that has elapsed in this state, it's probably correct to assume that Rev-Ed's mission -- to bring programming to the UK educational system -- is being fully met now and a develop-to-follow-the-marketplace approach is not in Rev-Ed's mission statement nor is the direction of computing development outside the UK of any interest. Of course, I am not speaking for Rev-Ed, just verbalizing my impressions from the dozen or so years I've been following this forum.
 

pleiser

Senior Member
#7
Is Blockly for PICAXE the official successor for AxePad? I have not looked into it in detail yet, as I am not interested in the block-based programming that (I assumed, anyway) are its primary focus. How does its feature set compare with AxePad and PE6? Does it support all the preprocessor directives of PE6? Does it at least support all those that are supported in AxePad (thus being compatible with my preprocessor for PE6-like multi-file include support)?

If it is the official successor to AxePad, I feel like that should be further clarified, as I'm sure many (like me) overlooked it as being for "block based programming" comparable to Logicator that many are not interested in. As I recall, Logicator also supported BASIC text programming, but was limited with that compared to PE.

Edit: based on a quick test of the desktop version of blockly on MacOS, it seems to only allow one file to be open at a time, with no way to open multiple instances or windows of the app to edit more than one file at a time, making it a major downgrade for my workflow, making my mutiple-file, collaborative workflow (for my college robotics club) effectively unusable with it. If MacAxePad won't be recompiled for 64 bit, or there's something I'm missing (or will be updated in blockly) I worry I'll be forced to use some non-PICAXE text editor (perhaps nano, or bbedit), losing accurate syntax highlighting, and many other features. Am I missing something?
 
Last edited:

tmfkam

Senior Member
#8
Perhaps (as a first step) the compiler could be updated and the command line syntax for using it, published allowing it to be integrated into an alternative IDE/editor.I've said before that Mac compatibility was one of the main resons for me starting to use PicAxe when I worked at an FE College. It would be a shame to see this lost.

There is an alternative BASIC for PIC processors available and some work has been done recently on enabling native Mac binaries for it. Having previously compiled the binaries myself, I appreciate this more official step into the Mac world. It is also now 64bit ready.
 

Flenser

Senior Member
#9
and the command line syntax for using it, published allowing it to be integrated into an alternative IDE/editor
tmfkam,
The command line syntax is published at http://www.picaxe.com/Software/Drivers/PICAXE-Compilers . Click on the Downloads tab and checkout the "Command line compiler introduction and explanation" pdf file.

The compiler_readme.txt fle that is included in the compiler download zip file also has the command line syntax for that release of the compilers whick looks to be more recent than the pdf document.
 

Flenser

Senior Member
#10
pleiser,

I've just noticed Visual Studio Code http://www.picaxe.com/Software/Third-Party/Visual-Studio-Code/ on the RevEd site.
I haven't had a look at it yet but as a modern IDE perhaps it will satisfy your requirement to open and edit mutilple files.
Note the Revision History for the PICAXE Visual Studio Code integration. This is the first release.
The downloads of the command line compilers at http://www.picaxe.com/Software/Drivers/PICAXE-Compilers/#download offers the same version v3.1 for both Windows and Mac Intel but a check of PE v6.1.0.0 shows it includes version v4.0 (beta) of the Windows compilers.
 

Hemi345

Senior Member
#11
I can confirm that VScode extension works well on Windows. PE6 is still king for simulating stuff, but for long stints writing code, it's going to be so nice to use VScode because I can use my favorite Material Dark them that's easier on the eyes (I just didn't have any luck creating a similar dark theme in PE6).
 

Flenser

Senior Member
#14
Are pre-processor directives supported, especially the #include one, in VS code IDE?
Hemi345,
I recently discovered that you can get a more recent version of the command line compilers from the PE version v6.1.0.0 PICAXE Editor\Compilers directory that includes the command line precompiler picaxepp.exe. Copy these into your VS PICAXE compilers directory.

Version 2.0.0 of the VS tasks.json syntax includes the new dependsOn property that allows you to chain tasks.

This is where I've gotten to testing a tasks.json file that supports the PICAXE precompiler in VS:
JSON:
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "PICAXE syntax check",
            "command": "D:\\VSCode-win32-ia32-1.31.1\\resources\\app\\extensions\\picaxe\\compilers\\picaxe08m2.exe",
            "dependsOn": ["PICAXE precompiler"],
            "args": ["-s", "${fileBasenameNoExtension}.pppbas"],
            "problemMatcher": []
        },
        {
            "label": "PICAXE precompiler",
            "command": "D:\\VSCode-win32-ia32-1.31.1\\resources\\app\\extensions\\picaxe\\compilers\\picaxepp.exe",
            "args": ["-p08m2", "${file}", "${fileBasenameNoExtension}.pppbas"],
            "problemMatcher": []
        }
    ]
}
Note that the precompiler produces two outputs, the code output after precompiler processing and the precompiler listing. The precompiler listing appears hardcoded to use the .ppp extension so if you specify a filename with the .ppp extension for the precompiler code output you get the precompiled code output and the precompiler listing output all in the one file, which is wrong.
 
#15
That looks very promising. Unfortunately, the compilers included in the LinAxePad don't have the picaxepp.exe available. It's a shame to have the pre-processor functionality decoupled from the IDE and still not making it available to the rest of the development tools Rev Ed is making.
 

pleiser

Senior Member
#18
It's not directly integrated into AxePad (though I'd be happy to work with Rev-Ed to integrate it into their tools if they're interested), but I have set up a makefile which runs the preprocessor, and works with the command line compilers to do the preprocessing and upload with the command "make compile" on the command line, or a syntax check with the command "make syntax".

Alternatively you can always just open the file that is created by the preprocessor ("compiled.bas" by default) in axepad to do a syntax check or upload manually instead.

I'll try to upload my complete workflow for using the preprocessor later today, then it's trivial to modify the makefile for your purpose.
 

pleiser

Senior Member
#19
I recently realized that the command line compilers for MacOS are also 32 bit, so they will also be unusable on MacOS after the next major update (likely in July). Are those going to be updated with a 64 bit version (and ideally perhaps including native #include and #macro directives)?
 
#20
I was going to ask about this too as I use the AxePad version on my macbook pro and have been concerned about the fact that Axepad won't work after the next major update.

I've downloaded the Blockly app and will give that a try.
 
Top