DIRECTORY Basics, PrincOps; BitTwiddling: CEDAR--not really, but what the hey, you'd just put TRUSTEDs around it, right?-- DEFINITIONS = { Ptr: TYPE = PrincOps.BitAddress; PtrFromRef: PROC [r: REF ANY] RETURNS [p: Ptr]; PtrFromPOINTER: PROC [p: LONG POINTER] RETURNS [q: Ptr]; DeReferencePtr: PROC [p: Ptr] RETURNS [q: Ptr]; OffsetPtr: PROC [p: Ptr, bits: INT] RETURNS [q: Ptr]; Copy: PROC [from, to: Ptr, bitCount: NAT, bbTable: PrincOps.BitBltTablePtr]; Equal: PROC [p1, p2: Ptr, bitCount: NAT] RETURNS [equal: BOOL]; TwoToThe: ARRAY [0 .. Basics.bitsPerWord] OF LONG CARDINAL = [ 00001H, 00002H, 00004H, 00008H, 00010H, 00020H, 00040H, 00080H, 00100H, 00200H, 00400H, 00800H, 01000H, 02000H, 04000H, 08000H, 010000H]; oneLessThanTwoToThe: ARRAY [0 .. Basics.bitsPerWord] OF CARDINAL = [ 0, 00001H, 00003H, 00007H, 0000FH, 0001FH, 0003FH, 0007FH, 000FFH, 001FFH, 003FFH, 007FFH, 00FFFH, 01FFFH, 03FFFH, 07FFFH, 0FFFFH]; zeroFirst: ARRAY [0 .. Basics.bitsPerWord] OF CARDINAL = [ 0FFFFH, 07FFFH, 03FFFH, 01FFFH, 00FFFH, 007FFH, 003FFH, 001FFH, 000FFH, 0007FH, 0003FH, 0001FH, 0000FH, 00007H, 00003H, 00001H, 00000H]; zeroLast: ARRAY [0 .. Basics.bitsPerWord] OF CARDINAL = [ 0FFFFH, 0FFFEH, 0FFFCH, 0FFF8H, 0FFF0H, 0FFE0H, 0FFC0H, 0FF80H, 0FF00H, 0FE00H, 0FC00H, 0F800H, 0F000H, 0E000H, 0C000H, 08000H, 00000H]; oneFirst: ARRAY [0 .. Basics.bitsPerWord] OF CARDINAL = [ 00000H, 08000H, 0C000H, 0E000H, 0F000H, 0F800H, 0FC00H, 0FE00H, 0FF00H, 0FF80H, 0FFC0H, 0FFE0H, 0FFF0H, 0FFF8H, 0FFFCH, 0FFFEH, 0FFFFH]; lastMasks: ARRAY [0 .. Basics.bitsPerWord) OF CARDINAL = [ 0FFFFH, 08000H, 0C000H, 0E000H, 0F000H, 0F800H, 0FC00H, 0FE00H, 0FF00H, 0FF80H, 0FFC0H, 0FFE0H, 0FFF0H, 0FFF8H, 0FFFCH, 0FFFEH]; altRem: ARRAY [0 .. Basics.bitsPerWord] OF [0 .. Basics.bitsPerWord] = [ Basics.bitsPerWord, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 0]; }. VBitTwiddling.Mesa Last Edited by: Spreitzer, September 26, 1985 7:52:30 pm PDT Κ|– "cedar" style˜Icode™J™KšΟf˜Kš‘˜Kš‘˜Kš‘˜Kš‘œ˜ —K˜šœœœœ˜DKš‘˜Kš‘˜Kš‘˜Kš‘˜Kš‘œ˜ —K˜šœ+œœ˜:Kš‘˜Kš‘˜Kš‘˜Kš‘˜Kš‘œ˜—K˜šœ œœœ˜9Kš‘˜Kš‘˜Kš‘˜Kš‘˜Kš‘œ˜—K˜šœ œœœ˜9Kš‘œ˜Kš‘˜Kš‘˜Kš‘˜Kš‘œ˜ —K˜šœ œœœ˜:Kš‘œ˜Kš‘˜Kš‘˜Kš‘˜Kš‘œ˜—K˜šœœœ˜HKšœJ˜J—K˜K˜——…—D