read registers
slightly nicer register read
pointer bug
send_command