Get a small table lamp for his room. Put it on a timer. To start with, have it come on at the time he is getting up now. When you go to get him, make a point of telling him it must be time to get up because the light is on. Then move the time back a little every few days (no more than 10 minutes at a time) until it is at a more reasonable wake up time for you.
I put a fishtank in my daughter's room and put it's light on a timer. She now knows that I won't be in until "fishy morning". It works pretty well for us. She is usually awake about 10 minutes before the light comes on but she doesn't start hollering for me until it does come on.
at 3:56 PM on Oct. 3, 2008