happy propeller hat user here. Things work with openspin and p1load as advertised - I can run SPIN and obviously through that PASM programs.
However, I would like to code in propeller gcc. Installing SimpleIDE on my PI2 worked without a hitch, I get propeller-elf-gcc, and can use it to code.
But the problem is the resulting output-file. It’s not a binary as the ones generated by openspin. SimpleIDE comes with it’s own propeller-load - but that refuses to work, probably because it assumes the FTDI-based propeller USB connector.
It’s been a while since I used it, but you should find a “.binary” file alongside the “.elf” one in SimpleIDE’s output folder within your project.
With a bit of bash script wrapper magic, you should be able to trick SimpleIDE into using propterm to upload code. This is something I had set up waaay back when I was tinkering with SimpleIDE. I’ll install SimpleIDE and see if I can make it work again.
Edit: This is the dirtiest code ever, but if you move /opt/parallax/bin/propeller-load to /opt/parallax/bin/propeller-load-orig and create a new file called /opt/parallax/bin/propeller-load with these contents, and set as executable ( chmod +x ) then it should upload:
#!/bin/bash
NAME=$0
LDR_DIR_SW=$1
LDR_DIR=$2
if [ "$LDR_DIR_SW" == "-s" ]; then
echo "Making .binary"
/opt/parallax/bin/propeller-load-orig -s $2
exit 0;
fi
BOARD_TYPE_SW=$3
BOARD_TYPE=$4
FILE=$5
FILE="${FILE/\.elf/\.binary}"
echo $FILE
propman $FILE
It looks like SimpleIDE does two called to propeller-load, the first is something like propeller-load -s MyProject.elf which causes propeller-load to output a binary file. This script attempts to trap that call and route it accordingly.
Any attempts to upload are then routed to propman. This is a very naive implementation that will break easily, but it appears to work for me.
The second challenge is getting the right config. I created a file at /opt/parallax/propeller-load/propellerhat.cfg with the following contents: