You make an interesting point, Quietust. After all, the whole point of assigning text labels to numbers is to help the programmer make addressing these ports easier. But, when only 4 or 5 alphabet letters (representing abbreviations) are used to represent 4 hexadecimal numbers, this scheme quickly loses it's effectiveness. $400F is going to mean as much to a stranger to the NES's architecture, as the words "NFR1" will. My point: if text labels are to be used to assist the programmer
However, this is not to discourage the efforts of Cye Freeman. I just think that some of the labels for those addresses should be a *little* more descriptive. Don't be afraid of using 10 or more characters for to label an absolute address: this is the whole point of using compilers and interpreters. After all, if the coder has a problem with typing so much text just to access a 16-bit memory address, then they're probably going to be using the raw addresses anyway.
However, it seems that with an architecture like the NES, where I/O registers are more or less organized in a structured way (and there is after all, only a very few of them), remembering absolute addresses is pretty easy. I don't know if this would be effective for a (much) more complicated architecture like the SNES, but I suppose that if a programmer used the raw addresses frequently enough, they would sure memorize them. Of course, this still doesn't mean that they have to.
I know that this post isn't so much NES-related, as it is personal opinion, but I thought I'd make a point of bringing it up.