Attempted to mirror Neil's code more closely.

It is pretty broken; it bounces around indiscrimatly. The program
counter/stack pointers are set to bad values but not sure why.