ULP assembler in Arduino IDE

subzero
Posts: 3
Joined: Sat Feb 23, 2019 8:18 pm

ULP assembler in Arduino IDE

Postby subzero » Sun Feb 24, 2019 2:19 pm

Another member (duff2013) has written a python script to supplement the espressif python script for building programs in Arduino IDE.
But it does not work on linux PCs, and it requires you to install python on your PC just to execute those 2 scripts.

I don't like python and I don't want to install it. But even if I did, the script would not work in the linux file system. I assume I could use the esp-idf instead of arduino ide but I would still need python. Does the esp-idf ulp stuff work on a linux PC?

Does anyone know how to build ULP Assembler code in Arduino IDE on a linux PC?

If not, does anyone want to help me implement a solution?

boarchuz
Posts: 605
Joined: Tue Aug 21, 2018 5:28 am

Re: ULP assembler in Arduino IDE

Postby boarchuz » Mon Feb 25, 2019 1:00 am


subzero
Posts: 3
Joined: Sat Feb 23, 2019 8:18 pm

Re: ULP assembler in Arduino IDE

Postby subzero » Mon Feb 25, 2019 6:16 pm

Thank you.
I thought if you added assembler in-line with the C program it would reside in the wrong memory.
But I guess ulp_process_macros_and_load moves it over to slow memory and builds the 12 byte program header. If it also resides in main memory it would not be a problem because it has to be very small anyway. Or maybe the linker moves it.
I assume address (jump) labels are converted to the right values somehow.

It has to be assembled with the ULP assembler and not the Xtensa assembler to produce the right machine code, so I guess you still have to setup esp-binutils in Arduino IDE (which may have an internal python compiler, or maybe not)?
Or maybe the ESP compiler scripts take care of that without esp-binutils?

Who is online

Users browsing this forum: Google [Bot] and 80 guests