INCLUDE "D2:REAL.ACT" ;from the Action! Tool Kit PROC Swap(BYTE POINTER ptr1,ptr2 INT size) BYTE tmp INT i FOR i=0 TO size-1 DO tmp=ptr1^ ptr1^=ptr2^ ptr2^=tmp ptr1==+1 ptr2==+1 OD RETURN PROC Main() BYTE b1=[13],b2=[56] INT i1=[65234],i2=[534] REAL r1,r2 CHAR ARRAY s1="abcde",s2="XYZ" Put(125) PutE() ;clear the screen ValR("32.5",r1) ValR("-0.63",r2) Print("Swap bytes: ") PrintB(b1) Put(32) PrintB(b2) Print(" -> ") Swap(@b1,@b2,1) PrintB(b1) Put(32) PrintBE(b2) Print("Swap integers: ") PrintI(i1) Put(32) PrintI(i2) Print(" -> ") Swap(@i1,@i2,2) PrintI(i1) Put(32) PrintIE(i2) Print("Swap floats: ") PrintR(r1) Put(32) PrintR(r2) Print(" -> ") Swap(r1,r2,6) PrintR(r1) Put(32) PrintRE(r2) Print("Swap strings: ") Print(s1) Put(32) Print(s2) Print(" -> ") Swap(@s1,@s2,2) Print(s1) Put(32) PrintE(s2) RETURN