fun Rx(i0) {				 
    val ii = i0?ext(32);
    if(ii == 0) return 0?ext(64);
    else if(ii < 8) return global_registers[ii-1];
    else {
	val win = (CWP?cvt(ulong) - (ii / 16) + 8 ) % 8 ;
	ii = ii & 0xf?ext(32); return register_windows[win][ii];
    }
}