message KesoRefProtoMsg {
	// parameters
	required int32 pc_address = 1;
	required int32 ram_address = 2;
	required int32 bit_offset = 3;

	// results
	// make these optional to reduce overhead for server->client communication
	enum ResultType {
		CALCDONE = 1;
		TIMEOUT = 2;
		TRAP = 3;
		EXC_ERROR = 4;
		EXC_PARITY = 5;
		EXC_NULLPOINTER = 6;
		EXC_OOBOUNDS = 7;
		MEMACCESS = 8;
		UNKNOWN = 9;
	}
	// result type, see above
	optional ResultType resulttype = 4;
  optional uint32 original_value = 5;
	// did ECC correct the fault?
	//optional int32 error_corrected = 6;
	// optional textual description of what happened
	optional string details = 7;
}
