Help with errors in Offline Compiler on windows MSYS2 when compiling Gen~ binaries

Hi, I am trying to figure out an error with the offline compiler.
I’ve added gcc-arm-11.2-2022.02-mingw-w64-i686-arm-none-eabi binaries in the TOOLROOT settings. Updated Msys and installed gcc and cmake. I don’t have emscripten or the FirmwareSender setup (seems like it isnt necessary since i can use this online uploader (hopefully) OpenWareLaboratory (

I am compiling a gen~ patch called Dataplayer with make GEN=Dataplayer . I guess make GEN=Dataplayer patch clean is the proper way?
in anycase, I end up with

 Building patch Dataplayer
 ./Source/startup.s: Assembler messages:
 ./Source/startup.s:83: Error: can't open progname.s for reading: No such file or directory
 make[1]: *** [ Build/startup.o] Error 1
 make: *** [Makefile:110: patch] Error 2

Any idea if my “toolpipe” is broken? If i check the /Build/ directory there is a progname.s file there .
What I am assuming is that I would get a Dataplayer.bin that i can then upload with the OpenWareLaboratory uploader.

let me know if I missed something…

(only thing I am questioning is the “build-essential” package from the instructions that probably has extra stuff i need for the MSYS2 packages. maybe also the 32bit vs 64bit msys2 apps…)

progress! i had to edit startup.s to point to the exact directory of the progname.s file with forward slashes.

You definitely shouldn’t have to edit startup.s. I think you might do something like that instead: make GEN=Dataplayer_gen clean load

not having much progress otherwise. Now the problem is the built .syx won’t load correctly with the windows binary of FirmwareSender or the online OpenWareLaboratory link above. Maybe the hard edit of startup.s is indeed not the right approach…but otherwise I can’t get the compilation to work (it can’t find progname.s)

Well you could just undo whatever you’ve edited and do it the correct way that I’ve described.

ok I’ve undone the changes and now im back to where i was 9 hours ago

make clean load GEN=Lich_Rungler
Building patch Lich_Rungler
./Source/startup.s: Assembler messages:
./Source/startup.s:83: Error: can't open progname.s for reading: No such file or directory
make[1]: *** [ Build/startup.o] Error 1
make: *** [Makefile:110: patch] Error 2

i’ve resorted to just using a patch that i know works for sure (with the online compiler) and im trying to load it via the local compiler and hopefully the correct setup for MSYS2

That’s strange. This file is created automatically when you compile patches, it should be in Build/Source/ directory. You should see something like that in there:

ls Build/Source/
gen.h  genlib_common.h  genlib_common_win.h  genlib.cpp  
genlib_exportfunctions.h genlib.h  genlib_ops.h  GenPatch.hpp  progname.s

yeah they are all there - thats why hardcoding the location works… I think something is messed up with dynamic directory point or something with windows MSYS2 here.

I think the old version of FirmwareSender might still work, just doesn’t support storing resources. What kind of error do you get?

Patch finishes compiling and lich shows an L then the buttons flash and there is an E on screen. Doing the compilation with load into ram again after that without resetting Lich seems to just reboot it and it loads patch 1 from memory (i dont have a patch 0)
*oh i guess there is no patch 0 anymore - patch 0 means whatever is loaded into RAM i guess in latest firmwares . Need to adjust this in the github readme since it still says that default STORE position is 0. Also the Gen~ terminology for gate out needs to be updated (note to self)

I used FirmwareSender to send a patch for storage instead of Ram and selecting that patch just resets the Lich. So something is not building right i guess. I can share the built .bin (i assume firmware sender needs a bin and not a .syx)