If server is running on the same machine
&addr ← XNSCH.LookupAddressFromRope["ME"].address
&ref ← NEW[XNS.Address]
&ref^ ← &addr
&myHandle ← CrRPC.CreateClientHandle[$SPP, &ref]
&sgf[RapunzelP2200V4ClientImpl]
PeekShort[&myHandle, 4]
PokeShort[&myHandle, 4, 37]
PeekShort[&myHandle, 4]
&c ← RapunzelSimpleClientImpl.PeekPokePeek[addr, value]
DoCmds[&myHandle, &c]
&myHandle.procs.destroy[&myHandle]
etc...
or if the server in on other machine
&addr ← XNSCH.LookupAddressFromRope["LoanShark"].address
&ref ← NEW[XNS.Address]
&ref^ ← &addr
&crHandle ← CrRPC.CreateClientHandle[$SPP, &ref]
&sgf[RapunzelP2200V4ClientImpl]
PeekShort[&crHandle, 4]
PokeShort[&crHandle, 4, 37]
PeekShort[&crHandle, 4]
&peekseq ← PeekSeqShort[&crHandle, 0, 10]
&pokeSeq ← RapunzelSimpleClientImpl.PokeSeq[3]
&pokeSeq[0] ← 5
&pokeSeq[1] ← 8
&pokeSeq[2] ← 81
PokeSeqShort[&crHandle, 4, &pokeSeq]
&cmdSeq ← RapunzelSimpleClientImpl.PeekPokePeek[addr, value]
DoCmds[&crHandle, &cmdSeq]
&cmdSeq2 ← RapunzelSimpleClientImpl.PokePeek[addr, value]
DoCmds[&crHandle, &cmdSeq2]
&cmdSeq3 ← RapunzelSimpleClientImpl.PeekPoke[addr, value]
DoCmds[&crHandle, &cmdSeq3]
&cmdSeq4 ← RapunzelSimpleClientImpl.PokePoke[addr, value]
DoCmds[&crHandle, &cmdSeq4]
&cmdSeq5 ← RapunzelSimpleClientImpl.PokePeekPeek[addr1, addr2, value]
DoCmds[&crHandle, &cmdSeq5]
&crHandle.procs.destroy[&crHandle]