>CLEAR >****** *** the following returns .f. (not correct, should be .t.) >** THIS RETURN .T. >?Test(; > 2^1 + ; > 2^2 + ; > 2^3 + ; > 2^4 + ; > 2^5 + ; > 2^6 + ; > 2^7 + ; > 2^8 + ; > 2^9 + ; > 2^10 + ; > 2^11 + ; > 2^12 + ; > 2^13 + ; > 2^14 + ; > 2^15 + ; > 2^16 + ; > 2^17 + ; > 2^18 + ; > 2^19 + ; > 2^20 + ; > 2^21 + ; > 2^22 + ; > 2^23 + ; > 2^24 + ; > 2^25 + ; > 2^26 + ; > 2^27 + ; > 2^28 + ; > 2^29 + ; > 2^30 + ; > 2^31 + ; > 2^32 + ; > 2^33, ; > 32) > >*** FULL TEST >x=0 >? 'zero' >? >FOR k=0 TO 52 > IF Test(m.x,m.k) > ?? TRANSFORM(m.k,"@R < 99 >") > ENDIF >NEXT >* PREPARE A FULL 53 BITS SET TO 1 >FOR k=0 TO 52 > x=m.x+2^m.k >NEXT >? '111...' >? >FOR k=0 TO 52 > IF Test(m.x,m.k) > ?? TRANSFORM(m.k,"@R < 99 >") > ENDIF >NEXT > > >FUNCTION Test >LPARA MasterBit, TestBit >RETURN BITTEST(m.MasterBit*2^MIN(0,32*SIGN(31-m.TestBit)), m.TestBit%32) >