I think I actually bought a book on the topic at one point but never ended up doing a lot with it. Unfortunately my HP41 is pretty much dead at this point (battery leak and a flaky key) and it's one of those things I can't really justify replacing. (And, like assembly language, I think I'll probably keep HP calculator programming in the "it was cool at the time" bucket :-))
The phrase "synthetic programming" certainly brings back fond memories for me. Something about entering a weird but valid program instruction, then removing a memory module and power cycling to forcibly corrupt the RAM and build the initial wedge to then enter the synthetic codes?