OMG! Sounds like a nightmare.
How would you recover?
I wrote a VB program that decodes the channel data files, and figures out which DiseqC-1.2 sat number corresponds to what satellite, and that made it clear where the deleted sat had messed things up, then I could edit the file with a binary editor to restore things.
There is a thread about it over on the Sadoun forum.
Mercury positioner numbers save location in ch. file. - Sadoun Tech Forums
In message 3 of the thread there is a link to my program, however that link is now dead, since my web page is down today, and perhaps for a while, since I'm in the process of moving my web page to another host. I just moved that one file, in case anyone wanted to try it. It was written for the Mercury, but probably works on the Dynamic channel data files too, since the Dynamic is supposed to be the same as a Mercury. It can't hurt to try, as it doesn't write anything, it just reads.
Program is at http://www.eskerridge.com/bj/sat/bjbinview.zip
If nothing else, using the program is a bit educational relative to how the DiseqC-1.2 process works. Ie the motor stores something like 51 or so locations, and in the receiver you just store the info that a certain sat corresponds to location number 15 or something, and basically just sends a GOTO 15 command to the motor. Ie with DiseqC-1.2, the receiver doesn't actually store any actual positions, just the info of what sat corresponds to what number.
I also used the program to help transfer sat numbers from other receivers over to the Mercury, so that I could use the motor with any of my receivers. The program didn't do the transfer, but it told me in what order the sats were in the channel data file, so I'd know what bytes to change with a binary editor.