AFAICT, this has been mildly broken forever. If you look at store_register_using_P and fetch_register_using_p, they both call remote_send, followed by packet_ok, and then send error if PACKET_ERROR. Unfortunately the PACKET_ERROR path is dead code, because remote_send already bails with a much more general (ie. less useful) error msg if we get back an Exx reply. Most of us will have never seen this happen, because how can a remote target fail to write a register? But it can happen when the target is a replay recording as with Virtutech and VMware targets. This change is to give a more helpful error message, eg. 'Could not write register "eip"', as opposed to 'Remote failure reply: E00'.