One of my previous roommates wouldn't wake up if there was a garbage truck inside the room. Nothing short of hitting him would do the trick. That's another idea for an alarm clock.
maybe he'd get calluses after a while, from getting hit in the same spots all the time, which is when you'd need to drag him out of bed and dowse him with ice water...