It's due to OBD II.
I heartily agree that it should be able to display the codes as text without a special tool. The 1997+ C5 Corvette can do it, a friend of mine uses this feature when his check engine light comes on (more often than he would like). As you say, at least when his comes on he can find out what the problem is.
--
"Nonconformity? Oh yeah, you're the first 20 something kid I have seen with a Japanese letter tattooed on his arm. You want to be a nonconformist? Buy a pocket protector and get a haircut. The Chinese kids spending 20 hours at a time in the library are the ones who really don't care what you think about them" - Dr. House (fictional character)