I will add a few more details.
1. As noted you should remove NULL bytes. Another way to do this (and to add an END to the end of your program is to press GTO .. although if you do this you have to position back to the program using GTO or the CATALOG 1 function before going back into program mode to write the card.
2. The HP41 is a pretty clever little beastie. One of the things it does when a program is first run is to "compile" the branches (GTO and XEQ) so that after the first time through the calculator knows where to go and does not have to search for the label. There are short form and long form jumps but that is a whole 'nother discussion. The point here is that if you run your program and execute all jumps before you write it to a card the compiled version will be recorded and the program will run a little faster the first time after it is read back in. Not a big difference (although it can add up a little for a long program) but every bit helps. Also a PACK or GTO .. instruction will decompile the program since after packing the jumps destinations are no longer valid. So PACK first and then run the program to compile it and then write it to card.
3. Any key assignments for global labels within the program being written are also written out to the card. To use these key assignments later the calculator has to be in USER mode when the card is read back in.
4. While reading in a program if you do not have an END at the end of the last program in memory the program being read in will replace it.
5. The 41 card reader can read and translate HP 67/97 programs. The card reader basically duplicates those functions that are not found on the HP 41 such as P<>S.
I would strongly suggest that you get hold of a manual for the HP41 and any peripherals that you own if you do not already have them. This is quite a complex system and it will be hard to learn all the idiosyncrasies and tricks all on your own. This site offers a soft copy of all the manuals if you are interested. I actually own the manuals but find myself using the soft copy more often than not on those rare occasions (very rare after 30+ years of playing with the darn thing(s) <g>) that I need them.
Cheers