Hi Pascal,
Glad you noticed the size limitation of base list. In v1.5, which is the one currently being used, the upper limit was set to 512, and that explains the differences with the two baselist.dat files your attached. Back in around year 2000, I thought 512 would be large enough when I processed all the NDB entries. Indeed you are the first user to uncover this limit!
As far as so many unrecognized base residues as in your case, it is normal and intended. In principle, one could auto-detect the uncommon residues to keep 3DNA running without bothering with the baselist.dat file. However, as a design guideline, I have put several "check-points" in the 3DNA pipeline so users have more control, and can know what's going on. You could write a utility program to facilitate your job. If you do go that way, you might want to contribute back your work so others can benefit from your effort.
In the coming release of 3DNA v2.0, I have an up to date baselist.dat file for all the NDB entries up to March 2008, and of course, the 512 upper limit is gone. Sorry, No specified release date yet!
HTH,
Xiang-Jun